| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 20115 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.pdf.info">
- <!-- @todo review and revise upon completion of refactoring -->
- <title>Información del Documento y Metadatos</title>
- <para> Un documento <acronym>PDF</acronym> puede incluir información general
- como el título del documento, autor, la creación y modificación de
- fechas. </para>
- <para> Históricamente, esta información se almacena usando una estructura
- especial de Información. Esta estructura está disponible para lectura y
- la escritura como una array asociativo utilizando propiedades públicas
- <methodname>properties</methodname> de objetos
- <classname>Zend_Pdf</classname> : <programlisting language="php"><![CDATA[
- $pdf = Zend_Pdf::load($pdfPath);
- echo $pdf->properties['Title'] . "\n";
- echo $pdf->properties['Author'] . "\n";
- $pdf->properties['Title'] = 'New Title.';
- $pdf->save($pdfPath);
- ]]></programlisting>
- </para>
- <para> Las siguientes claves están definidas por v1.4 <acronym>PDF</acronym>
- (Acrobat 5) estándar: <itemizedlist>
- <listitem>
- <para>
- <emphasis>Title</emphasis> - string, opcional, el título del
- documento. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Author</emphasis> - string, opcional, el nombre de
- la persona que creó el documento. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Subject</emphasis> - string, opcional, el tema del
- documento. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Keywords</emphasis> - string, opcional, las
- palabras clave asociadas con el documento. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Creator</emphasis> - string, opcional, si el
- documento se convirtió desde otro formato a
- <acronym>PDF</acronym> , el nombre de la aplicación (por
- ejemplo, Adobe FrameMaker ®) que creó el documento original
- a partir del cual se convirtió. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Producer</emphasis> - string, opcional, si el
- documento se convirtió desde otro formato a
- <acronym>PDF</acronym> , el nombre de la aplicación (por
- ejemplo, Acrobat Distiller), que lo convirtió a
- <acronym>PDF</acronym> . </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>CreationDate</emphasis> - string, opcional, la
- fecha y la hora en que el documento fue creado, en la forma
- siguiente: "D:YYYYMMDDHHmmSSOHH'mm'", en la que: <itemizedlist>
- <listitem>
- <para>
- <emphasis>YYYY</emphasis> es el año. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>MM</emphasis> es el mes. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>DD</emphasis> es el día (01–31).
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>HH</emphasis> es la hora (00–23).
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>mm</emphasis> es el minuto (00–59).
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>SS</emphasis> es el segundo (00–59).
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>O</emphasis> es la relación de la hora
- local a la hora universal (UT), identificado por
- uno de los caracteres +, -, o Z (véase más
- adelante). </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>HH</emphasis> seguido de ' es el valor
- absoluto de la posición de la UT en horas
- (00-23). </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>mm</emphasis> seguido de ' es el valor
- absoluto de la posición de la UT en minutos
- (00-59). </para>
- </listitem>
- </itemizedlist> El carácter apóstrofe (') después de HH mm
- es parte de la sintaxis. Todos los campos después del año
- son opcionales. (El prefijo D:, aunque también opcional, se
- recomienda fuertemente.) Los valores por defecto para MM y
- DD son 01, y todos los demás valores numéricos de los campos
- son cero por defecto. Un signo más (+) como el valor del
- campo O significa que la hora local es más tarde que la UT,
- un signo menos (-) que la hora local es anterior a la UT, y
- la letra Z que la hora local es igual a la UT. Si no se
- especifica la información UT, la relación del tiempo
- especificado para UT se considera desconocida. Ya sea que la
- zona horaria se conozca o no, el resto de la fecha debe
- estar especificada en la hora local. </para>
- <para>Por ejemplo, el 23 de diciembre de 1998, a las 7:52 PM,
- hora estándar del Pacífico de EE.UU., está representado por
- el string "D:199812231952-08'00'". </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>ModDate</emphasis> - string, opcional, la fecha y
- la hora en que el documento fue modificado mas
- recientemente, de la misma forma que
- <emphasis>CreationDate</emphasis> . </para>
- </listitem>
- <listitem>
- <para>
- <emphasis>Trapped</emphasis> - booleano, opcional, indica si
- el documento ha sido modificado para incluir la captura de
- información. <itemizedlist>
- <listitem>
- <para>
- <emphasis><constant>TRUE</constant></emphasis> - El documento ha sido
- capturado; no se necesitan más capturas. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><constant>FALSE</constant></emphasis> - El documento aún no
- ha sido capturado; cualquier captura todavía
- debe ser hecha. </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><constant>NULL</constant></emphasis> - O bien se desconoce
- si el documento ha sido capturado o que lo ha
- sido en parte pero no completamente capturado, y
- alguna captura adicional puede ser necesaria.
- </para>
- </listitem>
- </itemizedlist>
- </para>
- </listitem>
- </itemizedlist>
- </para>
- <para> Desde <acronym>PDF</acronym> v 1.6 los metadatos se pueden almacenar
- en el documento <acronym>XML</acronym> especial adjunto al
- <acronym>PDF</acronym> (XMP - <ulink
- url="http://www.adobe.com/products/xmp/">Extensible Metadata
- Platform</ulink> ). </para>
- <para> Este documento <acronym>XML</acronym> se pueden recuperar y adjuntar
- al <acronym>PDF</acronym> con los métodos
- <methodname>Zend_Pdf::getMetadata()</methodname> y
- <methodname>Zend_Pdf::setMetadata($metadata)</methodname> : <programlisting language="php"><![CDATA[
- $pdf = Zend_Pdf::load($pdfPath);
- $metadata = $pdf->getMetadata();
- $metadataDOM = new DOMDocument();
- $metadataDOM->loadXML($metadata);
- $xpath = new DOMXPath($metadataDOM);
- $pdfPreffixNamespaceURI = $xpath->query('/rdf:RDF/rdf:Description')
- ->item(0)
- ->lookupNamespaceURI('pdf');
- $xpath->registerNamespace('pdf', $pdfPreffixNamespaceURI);
- $titleNode = $xpath->query('/rdf:RDF/rdf:Description/pdf:Title')->item(0);
- $title = $titleNode->nodeValue;
- ...
- $titleNode->nodeValue = 'New title';
- $pdf->setMetadata($metadataDOM->saveXML());
- $pdf->save($pdfPath);
- ]]></programlisting>
- </para>
- <para>Las propiedades comunes del documento se duplican en la estructura de
- Info y el documento Metadata (si se presentan). Ahora es responsabilidad
- del usuario la aplicación para mantenerlos sincronizados.</para>
- </sect1>
|