Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2015, 21:50
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 6 meses
Puntos: 320
Crear PDF con Font Type 3

Hola gente, pongo esto acá porque no tengo ni idea de donde puede encajar.

Estoy programando un pdf a mano (una pésima idea, pero la historia es larga), la cosa es que necesito crear un pdf cuyo "código fuente" sea solo texto plano, sin incluir blobs binarios ni objetos comprimidos, que muestre una frase que tenga embebida una fuente de type 3 con 11 caracteres.

Agarre el manual de pdf en la pagina 261 (la 269 del pdf) donde aparece un ejemplo basico de una fuente type 3 que usa un cuadrado para la letra A y un triangulo para la letra B.
Me dispuse a copiarlo y a ponerlo en marcha, pues eso es prácticamente lo que necesito, pero no hay caso, no logro que funcione.
Me lei este tutorial en español (que de tutorial no tiene nada, es una traduccion del manual anteriormente citado) pero tampoco logre que anduviera, googlemando encontre esto que esta relacionado pero no aclara mis dudas.

Tengo dos codigos, el primero es un PDF de hola mundo, este si funciona bien:
Código PDF:
Ver original
  1. %PDF-1.4
  2. 1 0 obj <</Type /Catalog /Pages 2 0 R>>
  3. endobj
  4. 2 0 obj <</Type /Pages /Kids [3 0 R] /Count 1>>
  5. endobj
  6. 3 0 obj <</Type /Page /Parent 2 0 R /Resources 4 0 R /MediaBox [0 0 500 800] /Contents 6 0 R>>
  7. endobj
  8. 4 0 obj<</Font <</F1 5 0 R>>>>
  9. endobj
  10. 5 0 obj<</Type /Font /Subtype /Type1 /BaseFont /Helvetica>>
  11. endobj
  12. 6 0 obj <</Length 43>> stream BT /F1 24 Tf 175 720 Td (Hola mundo!)Tj ET endstream
  13. endobj
  14. xref
  15. 0 7
  16. 0000000000 65535 f
  17. 0000000009 00000 n
  18. 0000000056 00000 n
  19. 0000000111 00000 n
  20. 0000000212 00000 n
  21. 0000000250 00000 n
  22. 0000000317 00000 n
  23. trailer <</Size 7/Root 1 0 R>>
  24. startxref
  25. 407
  26. %%EOF

Luego, lo que quize hacer es que ese "Hola mundo!" se convirtiera en "Hola bundo!" y mostrara los dichosos graficos usando type 3, tal como en el manual, pero no hay caso, el siguiente codigo es mi mejor intento, es sintacticamente correcto, por lo que no es un pdf dañado, pero no hace nada:
Código PDF:
Ver original
  1. %PDF-1.4
  2. 1 0 obj <</Type /Catalog /Pages 2 0 R>>
  3. endobj
  4. 2 0 obj <</Type /Pages /Kids [3 0 R] /Count 1>>
  5. endobj
  6. 3 0 obj <</Type /Page /Parent 2 0 R /Resources 4 0 R /MediaBox [0 0 500 800] /Contents 6 0 R>>
  7. endobj
  8. 4 0 obj <</Font <</F1 7 0 R>>>>
  9. endobj
  10. 5 0 obj <</Type /Font /Subtype /Type1 /BaseFont /Helvetica>>
  11. endobj
  12. 6 0 obj <</Length 43>> stream BT /F1 24 Tf 175 720 Td (Hola bundo!)Tj ET endstream
  13. endobj
  14. 7 0 obj <</Type /Font /Subtype /Type3 /CharProcs 9 0 R /Encoding 8 0 R /FirstChar 97 /LastChar 98 /Widths [1000 1000]>>
  15. endobj
  16. 8 0 obj <</Type /Encoding /Differences [97 /square 98 /triangle] >>
  17. endobj
  18. 9 0 obj << /square 10 0 R /triangle 11 0 R >>
  19. endobj
  20. 10 0 obj << /Length 38 >>
  21. stream
  22. 1000 0 0 0 750 750 d1 0 0 750 750 re f
  23. endstream
  24. endobj
  25. 11 0 obj << /Length 47 >>
  26. stream
  27. 1000 0 0 0 750 750 d1 0 0 m 375 750 l 750 0 l f
  28. endstream
  29. endobj
  30. xref
  31. 0 12
  32. 0000000000 65535 f
  33. 0000000009 00000 n
  34. 0000000056 00000 n
  35. 0000000111 00000 n
  36. 0000000213 00000 n
  37. 0000000252 00000 n
  38. 0000000320 00000 n
  39. 0000000410 00000 n
  40. 0000000537 00000 n
  41. 0000000612 00000 n
  42. 0000000665 00000 n
  43. 0000000754 00000 n
  44. trailer <</Size 12 /Root 1 0 R>>
  45. startxref
  46. 851
  47. %%EOF

Pero no pasa nada, deberia cambiar la fuente, pero no lo hace.

Probe 4 decenas de variantes mas, pero sin suerte.

Alguien me pude hechar un cable por favor?
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios

Última edición por NSD; 09/07/2015 a las 22:18