PDFlib HOWTO - FAQ

$Id: faq.html,v 1.63 2009-01-27 06:53:10 cz Exp $

<< PDFlib HOWTO ¤ËÌá¤ë

Ìܼ¡

¥Ñ¥Ã¥±¡¼¥¸´Ø·¸

Perl ¤Ç¤Î PDFlib ¤Î¥¤¥ó¥¹¥È¡¼¥ëÊýË¡¤Ï¡©

ɬÍפʤ³¤È¤Ï @INC ¥â¥¸¥å¡¼¥ë¤Î¥µ¡¼¥Á¥Ñ¥¹¤Ë pdflib_pl.so ¤È pdflib_pl.pm ¤ò¥³¥Ô¡¼¤·¤Æ¤¢¤²¤ë¤À¤±¤Ç¤¹¡£¤Þ¤º²¼µ­¤ò¼Â¹Ô¤·¤Æ¡¢¥Ñ¥¹¤òõ¤·¤Þ¤¹¡£

# perl -e 'use Config; print $Config{sitearchexp};'

RedHat ·Ï¤Ï /usr/lib/perl5/site_perl/5.6.1/i386-linux ¤Ë¡¢Debian ·Ï¤Ï /usr/local/share/perl/5.6.1 ¤Ë¥³¥Ô¡¼¤¹¤ë¤³¤È¤Ë¤Ê¤ë¤«¤È»×¤¤¤Þ¤¹(Perl 5.6.1 ¤Î¾ì¹ç)¡£

# cp perl56/pdflib_pl.so /usr/lib/perl5/site_perl/5.6.1/i386-linux/
# cp pdflib_pl.pm /usr/lib/perl5/site_perl/5.6.1/i386-linux/

¤³¤ì¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤Ï´°Î»¤Ç¤¹¡£¥µ¥ó¥×¥ë¥Õ¥¡¥¤¥ë¤ò¡Öperl hello.pl¡×¤Ê¤É¤Î¤è¤¦¤Ë¤·¤Æ¼Â¹Ô¤·¡¢PDF ¤¬Àµ¾ï¤ËÀ¸À®¤µ¤ì¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

¢¥Ìܼ¡

¥é¥¤¥»¥ó¥¹´Ø·¸

³«È¯´Ä¶­¤ÈËÜÈִĶ­¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¥é¥¤¥»¥ó¥¹¤Ïξ´Ä¶­¤ËɬÍס©

³«È¯´Ä¶­¤ÈËÜÈִĶ­¤È¤Ç°ì½Ö¤Ç¤âƱ»þ¤ËƱ°ì¥é¥¤¥»¥ó¥¹¤ò»ØÄꤷ¤Æ¤¤¤ë½Ö´Ö¤¬¤¢¤ë¾ì¹ç¤Ï¡¢ÊÌ¡¹¤Î¥é¥¤¥»¥ó¥¹¤¬É¬ÍפǤ¹¡£Î㤨¤Ð³«È¯´Ä¶­¤Ç³«È¯¤ò¹Ô¤Ê¤¤¡¢ËÜÈִĶ­¤òÀßÄꤷ¤ÆËÜÈִĶ­¤Ç¥Æ¥¹¥È¤¹¤ë¤è¤¦¤Ê¾ì¹ç¡¢³«È¯´Ä¶­¤«¤é¥é¥¤¥»¥ó¥¹¥­¡¼¤òºï½ü¤·¤Æ¤«¤é¤Ç¤Ï¤Ê¤¤¤È¡¢ËÜÈִĶ­¤Ë¥é¥¤¥»¥ó¥¹¥­¡¼¤òÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£

¤¿¤À¡¢¥é¥¤¥»¥ó¥¹¥­¡¼¤¬Ìµ¤¯¤Æ¤â www.pdflib.com ¤È¤¤¤¦¥í¥´¤¬É½¼¨¤µ¤ì¤ë¤À¤±¤Ê¤Î¤Ç¡¢¤½¤Î¤è¤¦¤Ê¾õ¶·¤Î¾ì¹ç¤Ë¤Ï¤½¤â¤½¤â³«È¯´Ä¶­¤Ë¥é¥¤¥»¥ó¥¹¥­¡¼¤ÏÉÔÍפǤϤʤ¤¤Ç¤·¤ç¤¦¤«¡©

¥é¥¤¥»¥ó¥¹¤Ë´Ø¤¹¤ë¥¨¥é¡¼¤¬É½¼¨¤µ¤ì¤ë

SMP¥Þ¥·¥ó¤Ç¡¢²¼µ­¤Î¤è¤¦¤Ê¥¨¥é¡¼¤¬É½¼¨¤µ¤ì¤Æ¤·¤Þ¤¦¾ì¹ç¡¢É¬Íפʥ饤¥»¥ó¥¹¿ô¤¬Â­¤ê¤Æ¤¤¤Þ¤»¤ó(PDFlib 7 ¤«¤é¤ÏʪÍýCPU¿ô¤Ë¤«¤«¤ï¤é¤ºÉ¬Íץ饤¥»¥ó¥¹¿ô¤Ï£±Âæ¤ËÉÕ¤­£±¤Ä¤Ê¤Î¤Ç¡¢¤³¤Î¥¨¥é¡¼¤Ï½Ð¤Ê¤¤¤Ï¤º¤Ç¤¹¡Ë¡£

Fatal error: PDFlib error [1994] PDF_begin_page: Found 2 CPUs - license covers only 1 in /var/www/htdocs/test.php on line 5

PDFlib ¤Ï CPU ¥é¥¤¥»¥ó¥¹¤Î¤¿¤á¡¢PDFlib ¤ò»ÈÍѤ¹¤ë¥Þ¥·¥ó¤Î CPU ¿ô¤¬2¤Ä¤Ç¤¢¤ì¤Ð2¥é¥¤¥»¥ó¥¹¡¢4CPU¥Þ¥·¥ó¤Ç¤¢¤ì¤Ð4¥é¥¤¥»¥ó¥¹¤¬É¬ÍפȤʤê¤Þ¤¹¡£¥é¥¤¥»¥ó¥¹¥­¡¼¤ÎÄɲäϡ¢ÉÔ­¤·¤Æ¤¤¤ë¥é¥¤¥»¥ó¥¹¥­¡¼¤ò¹ØÆþ¤·¤Æ¡¢1CPUÍѥ饤¥»¥ó¥¹¥­¡¼2¤Ä¤ò¹ç¤ï¤»¤Æ2CPU¹½À®¤Î¥µ¡¼¥Ð¤ÇÍøÍѤ¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤¹¤«¡© ¤Î¼ê½çÄ̤ê¥é¥¤¥»¥ó¥¹¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£

Apache(PHP)¤Ë¤ª¤¤¤Æ¡¢´Ä¶­ÊÑ¿ô PDFLIBLICENSEFILE ¤Ç¥é¥¤¥»¥ó¥¹¥Õ¥¡¥¤¥ë¤òÀßÄꤷ¤¿¤¤

¤Þ¤º¤Ï PDF_set_parameter() API¤ò»ÈÍѤ·¤Æ PDFLIBLICENSEFILE ¤òÀßÄꤷ¡¢¥é¥¤¥»¥ó¥¹¥Õ¥¡¥¤¥ë¤ÎÆâÍÆ¤¬Àµ¾ï¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤·¤ç¤¦¡£¥é¥¤¥»¥ó¥¹¥Õ¥¡¥¤¥ë¤ÎÆâÍÆ¤Ï²¼µ­¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡Êxxxxxxxxxx-xxxxxxxxxx ¤ä yyyyyyyyyy-yyyyyyyyyy ¤ÎÉôʬ¤Ï¡¢¼ÂºÝ¤Î¥é¥¤¥»¥ó¥¹¥­¡¼¤ò»ØÄꤷ¤Þ¤¹¡£»ØÄꤹ¤ë¥é¥¤¥»¥ó¥¹¥­¡¼¤¬°ì¤Ä¤Î¾ì¹ç¡¢ÅöÁ³¡ÖPDFlib 7.0.0¡×¤Î¹Ô¤Ï°ì¹Ô¤À¤±¤Ç¤¹¡Ë¡£

PDFlib license file 1.0
PDFlib 7.0.0 xxxxxxxxxx-xxxxxxxxxx
PDFlib 7.0.0 yyyyyyyyyy-yyyyyyyyyy

PDFlib ¤È¤Ï¤Þ¤Ã¤¿¤¯´Ø·¸¤Ê¤¯´Ä¶­ÊÑ¿ô¤ÎÉáÄ̤ÎÏäǤϤ¢¤ê¤Þ¤¹¤¬¡¢´Ä¶­ÊÑ¿ô PDFLIBLICENSEFILE ¤Ï Apache ¤òµ¯Æ°¤¹¤ë¥×¥í¥»¥¹¤Î´Ä¶­ÊÑ¿ô¤Ç¤Ï¤Ê¤¯¡¢Apache ¤Î´Ä¶­ÊÑ¿ô¤È¤·¤Æ »ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢

# export PDFLIBLICENSEFILE=/tmp/licensefile
# /etc/init.d/httpd start

¤È¼Â¹Ô¤·¤Æ¤â´Ä¶­ÊÑ¿ô PDFLIBLICENSEFILE ¤Ï Apache ¤Ë¤ÏÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤(°ú¤­·Ñ¤¬¤ì¤Æ¤¤¤Ê¤¤¡Ë¤¿¤á¡¢¤³¤ì¤Ç¤Ï¤¦¤Þ¤¯¤¤¤­¤Þ¤»¤ó¡£°ìÈÖ´Êñ¤Ê²ò·èÊýË¡¤Ï¡¢/etc/init.d/httpd ¥Õ¥¡¥¤¥ë¤Ë export ¹Ô¤ò½ñ¤¤¤Æ¤·¤Þ¤¦¤³¤È¤À¤È»×¤ï¤ì¤Þ¤¹¡£

°Ê²¼¤Ï httpd ¥Õ¥¡¥¤¥ë¤ÎÊѹ¹Îã¤Ç¤¹¡£

start() {
    echo -n $"Starting $prog: "

    # ¤³¤Î¹Ô¤òÄɲä·¤Þ¤¹¡£
    export PDFLIBLICENSEFILE=/tmp/licensefile

    daemon $httpd `moduleargs` $OPTIONS
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && touch /var/lock/subsys/httpd
    return $RETVAL
}

¢¥Ìܼ¡

µ»½Ñ´Ø·¸

PDFlib+PDI ¤Ç¼è¤ê¹þ¤ó¤À PDF ¥Õ¥¡¥¤¥ë¤ÎÁí¥Ú¡¼¥¸¿ô¤òµá¤á¤ë¤Ë¤Ï¡©

PDF_get_pdi_value() ¤ò key ¤Ë '/Root/Pages/Count' ¤ò»ØÄꤷ¤Æ¸Æ¤Ó½Ð¤·¤Þ¤·¤ç¤¦¡£²¼µ­¤Î¤è¤¦¤Ë¸Æ¤Ó½Ð¤»¤Ð OK ¤Ç¤¹($doc ¤Ï PDF_open_pdi()¤Î¡¢$page¤ÏPDF_open_pdi_page()¤Î¥ê¥¿¡¼¥óÃͤǤ¹)¡£

PDF_get_pdi_value($p, '/Root/Pages/Count', $doc, $page, 0);

Æ©ÌÀ¥Æ¥­¥¹¥È¤Î½ÐÎÏÊýË¡¤Ï¡©

PDFlib¤ª¤è¤ÓPDF»ÅÍͤˤϥƥ­¥¹¥È¥ì¥ó¥À¥ê¥ó¥°¥â¡¼¥É¤È¤¤¤¦³µÇ°¤¬¤¢¤ê¤Þ¤¹¡£¤½¤ÎÃæ¤Ë¡ÖÉԲĻë¡×¤È¤¤¤¦Â°À­¤¬¤¢¤ë¤¿¤á¡¢textrendering ¤òÉԲĻëÀßÄꤹ¤ë¤À¤±¤Ç¡¢°Ê¸å¤Îʸ»úÎó¤òÉԲĻë¤Ç½ÐÎϤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

PDF_set_value($p, "textrendering", 3);
PDF_show($p, "¤¢¤¤¤¦¤¨¤ª");	// ÉԲĻë

PDF_set_value($p, "textrendering", 0);
PDF_continue_text($p, "¤«¤­¤¯¤±¤³");	// ²Ä»ë

¤¿¤À¤·¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ê¤É¡¢¥Æ¥­¥¹¥È¥ì¥ó¥À¥ê¥ó¥°¥â¡¼¥É¤ò²ò¼á¤·¤Ê¤¤ PDF ¥Ó¥å¡¼¥ï¤Î¾ì¹ç¤Ë¤Ï¡¢¤â¤·¤«¤·¤¿¤éÉԲĻë¤Ë¤Ê¤é¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£

Çò»æ¤Î PDF ¤¬½ÐÎϤµ¤ì¤ë

¿¤¯¤Î¾ì¹ç¡¢IE ¤Î¥Ð¥°¤Ë¤è¤ë¤â¤Î¤Ç¤¹¡£¥µ¥ó¥×¥ë¤Ç¤ÏÀµ¾ï¤Ë¼Â¹Ô¤Ç¤­¤ë¤Î¤Ë¡¢¼«Ê¬¤Çºî¤Ã¤¿¥×¥í¥°¥é¥à¤Ç¤Ï¤¦¤Þ¤¯¤¤¤«¤Ê¤¤(PDF ¤¬½ÐÎϤµ¤ì¤Ê¤¤)¾ì¹ç¡¢¥µ¥ó¥×¥ë¤Î¤è¤¦¤Ë¥Ø¥Ã¥À¤ò¤Á¤ã¤ó¤È½ÐÎϤ·¤Æ¤¤¤ë¤«¤É¤¦¤«³Îǧ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

header("Content-type: application/pdf");
header("Content-Length: Ťµ");
header("Content-Disposition: inline; filename=PDF¥Õ¥¡¥¤¥ë̾.pdf");

¤â¤·¾åµ­¤òÄɲ䷤ƤâÂÌÌܤʾì¹ç¡¢PHP¤Ç¥»¥Ã¥·¥ç¥ó¤òÍøÍѤ·¤Æ¤¤¤ë¤È¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬IE¤Î¾ì¹ç¤Î¤ß¡Ö(À¸À®¤·¤¿PDF¤ÎURL̾)¤¬¼èÆÀ¤Ç¤­¤Þ¤»¤ó¡×¤È¤¤¤Ã¤¿¥¨¥é¡¼¥À¥¤¥¢¥í¥°¤¬É½¼¨¤µ¤ì¡¢Àµ¤·¤¯PDFɽ¼¨¤¬¤Ç¤­¤Þ¤»¤ó ¤ä¡¢header ¤ò»²¹Í¤Ë¤·¤Æ¡¢¡ÖPragma: no-cache¡×¡ÖExpires: 0¡×¡ÖCache-Control: must-revalidate, post-check=0, pre-check=0¡×¤È¤¤¤Ã¤¿¥Ø¥Ã¥À¤ò½ÐÎϤ·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£PHP ¤Ë¤ª¤±¤ëÀâÌÀ¤Ç¤¹¤¬¡¢Â¾¤Î¸À¸ì¤Ç¤â¶¦Ä̤βսê¤Ï¿¤¤¤Ç¤¹¡£

PDF_begin_document()Åù¤Î viewerpreferences ¥ª¥×¥·¥ç¥ó¤Î»ØÄêÊýË¡¤Ï¡©

²¼µ­¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤Ê¤ª¥¹¥Ú¡¼¥¹¤Î¤«¤ï¤ê¤Ë¡Ö=¡×¤Ç»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹(¸Ä¿ÍŪ¤Ë¤Ï¤³¤Ã¤Á¤ÎÊý¤¬¹¥¤ß¤Ç¤¹)¡£

PDF_begin_document($p, "", "viewerpreferences {hidemenubar=true hidetoolbar=true}");

# ¤³¤¦½ñ¤¤¤Æ¤â OK
PDF_begin_document($p, "", "viewerpreferences={hidemenubar=true hidetoolbar=true}");

PDFlib ¤ÇºîÀ®¤·¤¿ PDF ¤¬ Acrobat Reader 4.0¤ä5.0¤Ç³«¤±¤Ê¤¤

ÉáÃʰռ±¤·¤Ê¤¤¤«¤â¤·¤ì¤Þ¤»¤ó¤¬ PDF ¤Ë¤Ï¥Ð¡¼¥¸¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£PDFlib 6¡¡³ÆÀ½Éʤϥǥե©¥ë¥È¤Ç PDF ¥Ð¡¼¥¸¥ç¥ó 1.5 ¤Ç PDF ¤ò½ÐÎϤ·¤Þ¤¹¡£¤Þ¤¿ PDFlib 7 ³ÆÀ½Éʤϥǥե©¥ë¥È¤Ç PDF ¥Ð¡¼¥¸¥ç¥ó 1.6 ¤Ç PDF ¤ò½ÐÎϤ·¤Þ¤¹¡£

PDF 1.7 ¤Ï Acrobat 8 °Ê¹ß¡¢PDF 1.6 ¤Ï Acrobat 7 °Ê¹ß¡¢PDF 1.5 ¤Ï Acrobat 6 °Ê¹ß¡¢PDF 1.4 ¤Ï Acrobat 5 °Ê¹ß¡¢PDF 1.3 ¤Ï Acrobat 4 °Ê¹ß¤Ç¤·¤«³«¤¯¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£PDF ¤Î¥Ð¡¼¥¸¥ç¥ó¤òÊѹ¹¤¹¤ë¤Ë¤Ï²¼µ­¤Î¤è¤¦¤Ë¡¢PDF_new()´Ø¿ô¤ÇPDF¥ª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¸å¤ËÀßÄꤹ¤ë¤«¡¢¤¢¤ë¤¤¤Ï PDF_begin_document()¤Îcompatibility¥ª¥×¥·¥ç¥ó¤Ç»ØÄꤷ¤Þ¤¹¡£

$p = PDF_new()
PDF_set_parameter($p, "compatibility", "1.4"); # Acrobat 5 °Ê¹ß¤Ç³«¤±¤ë

PDF_begin_document($p, "", "compatibility=1.4")

¥Æ¥­¥¹¥È¥Õ¥í¡¼¤ÇÆüËܸì¤òÍøÍѤ¹¤ë¤Ë¤Ï¡©

¥Æ¥­¥¹¥È¥Õ¥í¡¼¤ÇÆüËܸì¤òÍøÍѤ¹¤ë¾ì¹ç¡¢¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤È¤·¤Æ Unicode ¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï encoding ¥ª¥×¥·¥ç¥ó¤È¤·¤Æ¡¢

¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£¥µ¥ó¥×¥ë¥³¡¼¥É¤È¤·¤Æ¡¢textflow_sample.php (PDFlib 7 ÍÑ) (PDFlib 6 ÍÑ) ¤òÍѰդ·¤Þ¤·¤¿¡£À¸À®¤µ¤ì¤ë PDF ¤Ï textflow_sample.pdf ¤Ç¤¹¡£

PDFlib ¥Ö¥í¥Ã¥¯¤ÇÊ£¿ô¹Ô¤ò»ØÄꤹ¤ë¤Ë¤Ï¡©

PDFlib ¥Ö¥í¥Ã¥¯¤ÇÊ£¿ô¹Ô¤Î¥Æ¥­¥¹¥È¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤Ï¡¢PDFlib ¥Ö¥í¥Ã¥¯¤Î¥×¥í¥Ñ¥Æ¥£¤Ç[¥Æ¥­¥¹¥È]¥¿¥Ö¤Î[textflow]¤ò true ¤ËÀßÄꤷ¡¢¥Æ¥­¥¹¥È¥Õ¥í¡¼¤òÍøÍѤ¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

¤¢¤È¤Ï PDF_fill_textblock()¤Ëʸ»úÎó¤ò»ØÄꤹ¤ë¤À¤±¤Ç¤¹¡£¥Ö¥í¥Ã¥¯¤Î²£Éý¤ËÆþ¤ê¤­¤é¤Ê¤¤¹Ô¤Ï¼«Æ°Åª¤Ë²þ¹Ô¤µ¤ì¤Þ¤¹¤¬¡¢ÌÀ¼¨Åª¤Ë²þ¹Ô¤¹¤ë¾ì¹ç¤Ï¡Ö\n¡×¤ò»ØÄꤷ¤Þ¤¹¡£

$text = "¤¢\n¤¤¤¦\n¤¨¤ª¤«\n¤­¤¯¤±¤³\n¤µ¤·¤¹¤»¤½\n¤¿¤Á¤Ä¤Æ¤È¤Ê¤Ë¤Ì¤Í¤Î¤Ï¤Ò¤Õ¤Ø¤Û";

PDF_fill_textblock($p, $page, "testblock", mb_convert_encoding($text, "UTF-8", "EUC-JP"), 
  "fontname {HeiseiKakuGo-W5} pdiwarning true encoding UniJIS-UCS2-H textformat utf8");

°ì¤Ä¤ÎPDFlib ¥Ö¥í¥Ã¥¯Æâ¤Ç¥Õ¥©¥ó¥È¤äʸ»úÅù¤òÊѹ¹¤¹¤ë¤Ë¤Ï¡©

textflow ¤ò true ¤ËÀßÄꤷ¤¿ PDFlib ¥Ö¥í¥Ã¥¯¤Î¾ì¹ç¡¢¥Æ¥­¥¹¥È¥Õ¥í¡¼¤Î¥¤¥ó¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤òÍøÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢°ì¤Ä¤Î¥Ö¥í¥Ã¥¯Æâ¤Ç¥Õ¥©¥ó¥ÈÅù¤ÎÀßÄê¤òÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¼ÂºÝ¤Î»ØÄêÊýË¡¤Ï²¼µ­¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥¤¥ó¥é¥¤¥ó¥ª¥×¥·¥ç¥ó¤´¤È¤Ë encoding ¤ò»ØÄꤷ¡¢¤«¤Ä PDF_fill_textblock()¤Î¥ª¥×¥·¥ç¥ó¤Ç¤â¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤ò»ØÄꤷ¤Ê¤¤¤È¥¨¥é¡¼¤È¤Ê¤ë¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

$org = "<fontsize=10 fontname=HeiseiKakuGo-W5 encoding=UniJIS-UCS2-H>¥µ¥ó¥×¥ë1<fontsize=30" . 
    "fontname=HeiseiMin-W3 encoding=UniJIS-UCS2-H>¥µ¥ó¥×¥ë2";

PDF_set_parameter($p, "textformat", "utf8");
$org = "\xEF\xBB\xBF" . mb_convert_encoding($org, "UTF-8", "EUC-JP");
PDF_fill_textblock($p, $page, "org", $org, "encoding=UniJIS-UCS2-H");

Ãí¼áÅù¡¢¥ª¥×¥·¥ç¥ó¤òÆüËܸì¤Ç»ØÄꤹ¤ë¤Ë¤Ï

ÆüËܸì¥Þ¥Ë¥å¥¢¥ë¤Î P.102¡Ö4.5.4 Unicode ÈóÂбþ¸À¸ì¤Ç¤Îʸ»úÎó½èÍý¡×¤Î¡Ö¥ª¥×¥·¥ç¥ó¥ê¥¹¥È¤Îʸ»úÎó¡×¤Ë¤¢¤ëÄ̤ꡢ³Æ´Ø¿ô¤Î°ú¿ô¤Ï UTF-8 ¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(UTF-8 BOM ¤ò¤ªËº¤ì̵¤¯)¡£¤½¤Î¤¿¤á¡¢Î㤨¤ÐÃí¼á¤ËÆüËܸì¤òÀßÄꤹ¤ë¤¿¤á¤Ë PDF_create_annotation() ´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹»þ¤Ê¤É¤Ë¤Ï¡¢²¼µ­¤Î¤è¤¦¤Ë UTF-8 ¤Ç»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(PDFlib 7 ¤«¤é¤Ï EUC-H ¤ä 90ms-RKSJ-H Åù¡¢Unicode °Ê³°¤Î CJK CMap ¤Ç»ØÄꤹ¤ë¤³¤È¤â²Äǽ¤È¤Ê¤ê¤Þ¤·¤¿ )¡£

$contents = 'Ãí¼áÃí¼áÃí¼á';
$contents = "\xEF\xBB\xBF" . mb_convert_encoding($contents, 'UTF-8', 'EUC-JP');
PDF_create_annotation($p, 100, 100, 500, 500, 'Text', 'contents='.$contents);

Solaris 8 ¤Ê¤É¡¢UTF-8 ¤ËľÀÜʸ»ú¥³¡¼¥É¤òÊÑ´¹¤Ç¤­¤Ê¤¤´Ä¶­¤Î¾ì¹ç¤Ë¤Ï¡¢PDFlib ¤Î PDF_utf16_to_utf8()´Ø¿ô¤òÍøÍѤ¹¤ë¤³¤È¤Ë¤è¤ê¡¢UTF-16 ¤«¤é UTF-8 ¤ØÊÑ´¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹(UTF-16 ¤Î¾ì¹ç¡¢BOM ¤Ï FFFE(Intel x86 ¤Ê¤É¤Î¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó´Ä¶­¤Î¾ì¹ç)¤â¤·¤¯¤Ï FEFF(PowerPC ¤Ê¤É¤Î¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó´Ä¶­¤Î¾ì¹ç¡Ë¤Ç¤¹¡Ë¡£

$contents = 'Ãí¼áÃí¼áÃí¼á';
$contents = "\xFF\xFE" . mb_convert_encoding($contents, 'UTF-16', 'EUC-JP');
$contents_utf8 = PDF_utf16_to_utf8($p, $contents);
PDF_create_annotation($p, 100, 100, 500, 500, 'Text', 'contents='.$contents_utf8);

¤â¤Á¤í¤ó¥¿¥¤¥È¥ë¤äºîÀ®¼Ô¤â»ØÄê²Äǽ¤Ç¤¹¡£

$author = 'ÎëÌÚ°ìϺ';
$author = "\xEF\xBB\xBF" . mb_convert_encoding($author, 'UTF-8', 'EUC-JP');
PDF_set_info($p, "Author", $author);

µ¡¼ï°Í¸ʸ»ú¤Îɽ¼¨ÊýË¡

ʸ»ú¥³¡¼¥É¤ÎÀ¤³¦¤Ç¤Ï¡¢¸·Ì©¤Ê°ÕÌ£¤Ç¤Ï¡Öµ¡¼ï°Í¸ʸ»ú¡×¤È¤¤¤¦¤â¤Î¤Ï¸ºß¤·¤Þ¤»¤ó¡£Î㤨¤Ð Windows ¤Çµ¡¼ï°Í¸ʸ»ú¤È¤µ¤ì¤Æ¤¤¤ë¡û¤Ë1¡Ö­¡¡×¤È¤¤¤¦Ê¸»ú¤ä¡¢¤Ï¤·¤´¤¿¤«¡Öüâ¡×¤Ï Microsoft ¥³¡¼¥É¥Ú¡¼¥¸932(CP932)¤Ë´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢¤³¤Îʸ»ú¥»¥Ã¥È¤Ï PDF ¤Ç¤Ï 90ms-RKSJ-H ¤È¤¤¤¦ CMap ¤ò»ØÄꤹ¤ë¤³¤È¤Ç°·¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¤Ê¤ª 90ms-RKSJ-H ¤ÏÅöÁ³ Shift-JIS ¤Ê¤Î¤Ç¡¢Linux ¤Ê¤É¤Ç¤Ï EUC ¤«¤éÊÑ´¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡ÊPHP ¤Î¾ì¹ç¡¢Ê¸»ú¤Ë¤è¤Ã¤Æ¤ÏÊÑ´¹À襨¥ó¥³¡¼¥É¤Ï SJIS-win ¤È»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡Ë¡£

$font = PDF_load_font($p, "KozGoPro-Medium", "90ms-RKSJ-H", "");
PDF_setfont($p, $font, 24.0);
PDF_set_text_pos($p, 50, 700);

$str = "¤¢­¡ü⤪";
$str = mb_convert_encoding($str, 'Shift-JIS', 'EUC-JP');
PDF_show($p, $str);

PDF ¥Ö¥í¥Ã¥¯¤Ç¡¢Ê¸»úÎó¤òº¸µÍ¤á¡¢±¦µÍ¤á¡¢Ãæ±û·¤¨Åù¤Çɽ¼¨¤¹¤ë¤Ë¤Ï

PDFlib ¥Ö¥í¥Ã¥¯¤Ç¥Æ¥­¥¹¥È¥Õ¥í¡¼¤ò»È¤¦¤Î¤¬°ìÈÖ´Êñ¤À¤È»×¤¤¤Þ¤¹¡£PDFlib ¥Ö¥í¥Ã¥¯¤Î¥×¥í¥Ñ¥Æ¥£¤Ç¡¢[¥Æ¥­¥¹¥È]¤Î¡Ötextflow¡×¤ò true ¤ËÀßÄꤷ¤Þ¤¹¡£Ê¸»ú¤ÎÇÛÃÖ¤Ï alignment ¥×¥í¥Ñ¥Æ¥£¤Ç¤âÀßÄê¤Ç¤­¤Þ¤¹¤·¡¢¡Ê¤â¤Á¤í¤ó¡Ë¥×¥í¥°¥é¥à¤«¤éÀßÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡£

¥µ¥ó¥×¥ë¥³¡¼¥É¤Ï sample_textflow.php, ¥Æ¥ó¥×¥ì¡¼¥ÈPDF ¥Õ¥¡¥¤¥ë¤Ï 560-0201_textflow.pdf ¤Ç¡¢À¸À®¤µ¤ì¤ë PDF ¤Ï textflow_sample.pdf ¤Ç¤¹¡£PDF_fill_textblock()´Ø¿ô¤Î¥ª¥×¥·¥ç¥ó¤Î textformat °ú¿ô¤Ï auto ¤Ç¤Ï¤Ê¤¯ utf8 Åù¡¢ÅϤ¹Ê¸»úÎó¤Îʸ»ú¥³¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

¥µ¥ó¥×¥ë¤ò¼Â¹Ô¤·¤Æ¤âʸ»ú¤¬É½¼¨¤µ¤ì¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢»ÈÍѤ·¤Æ¤¤¤ë PDFlib ¥Ö¥í¥Ã¥¯¥×¥é¥°¥¤¥ó¤È PDFlib ¤¬ºÇ¿·¥Ð¡¼¥¸¥ç¥ó¤«¤É¤¦¤«¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£PDFlib ¥Ö¥í¥Ã¥¯¥×¥é¥°¥¤¥ó 2.1.0 ¤ÇºîÀ®¤·¤¿ PDF ¥Õ¥¡¥¤¥ë¤Ï PDFlib 6.0.2 °Ê¹ß¤¸¤ã¤Ê¤¤¤È°·¤¨¤Þ¤»¤ó¡£

³°»ú¥¨¥Ç¥£¥¿¤ÇºîÀ®¤·¤¿³°»ú¤Î½ÐÎÏÊýË¡

¥«¥¹¥¿¥à¥Õ¥©¥ó¥È¤ÎÍøÍÑÊýË¡¤È¤Û¤ÜƱ¤¸¤Ç¡¢¥Õ¥©¥ó¥È¤òÆÉ¤ß¹þ¤ß¡¢½ÐÎÏʸ»ú¤È¤·¤Æ³°»ú¤Îʸ»ú¥³¡¼¥É¤ò»ØÄꤹ¤ë¤°¤é¤¤¤Ç¤¹¡£

¥µ¥ó¥×¥ë¥³¡¼¥É¤Ï gaiji.php(PDFlib 7ÍÑ)(PDFlib 6ÍÑ) ¤Ë¤¢¤ê¤Þ¤¹¡£

¥Æ¥ó¥×¥ì¡¼¥ÈPDF ¥Õ¥¡¥¤¥ë¤Ï 560-0201.pdf, ¥µ¥ó¥×¥ë¤ÇºîÀ®¤·¤¿³°»ú¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤Ï EUDC.TTE ¤Ç¡¢À¸À®¤µ¤ì¤ë PDF ¤Ï gaiji.pdf ¤Ç¤¹¡£¥«¥¹¥¿¥à¥Õ¥©¥ó¥È¤Î¾ì¹ç¡¢¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤Ï Unicode ¤ÎɬÍפ¬¤¢¤ê¤Þ¤¹¡£³°»úÎΰè¤Îʸ»ú¥³¡¼¥É¤òÊÑ´¹¤¹¤ë¾ì¹ç¤Ë¤ÏÊÑ´¹¸µ¤Î¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°¤È¤·¤Æ SJIS-win ¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£

¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤Î¼Â¹ÔÊýË¡¤Ï¡¢³°»ú¥¨¥Ç¥£¥¿(eudcedit.exe)¤ÇºîÀ®¤·¤¿³°»ú¥Õ¥©¥ó¥È(³°»ú¥¨¥Ç¥£¥¿¤ÇºîÀ®¤·¤¿³°»ú¥Õ¥©¥ó¥È¤Ï C:\windows\fonts\EUDC.TTE ¤È¤·¤ÆÊݸ¤µ¤ì¤Þ¤¹)¤ò /tmp ¤Ë¥³¥Ô¡¼¤·¡¢gaiji.php ¤È 560-0201.pdf ¤òƱ¤¸¥Ç¥£¥ì¥¯¥È¥ê¤ËÇÛÃÖ¤·¤Æ¼Â¹Ô¤¹¤ë¤À¤±¤Ç¤¹¡£

¤Ê¤ª PDF_setfont()¤ò¸Æ¤Ó½Ð¤·¤¿¸å¤Ï¡¢ÀßÄꤷ¤¿¥Õ¥©¥ó¥È¤Çʸ»ú¤¬½ÐÎϤµ¤ì¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢·ë²Ì¤È¤·¤ÆÅö³º¥Õ¥©¥ó¥È(³°»ú¥Õ¥©¥ó¥È)¤Îʸ»ú¥»¥Ã¥È¤Ë̵¤¤Ê¸»ú¤Ï½ÐÎϤµ¤ì¤Þ¤»¤ó¡£

¤Î¤É¤Á¤é¤«¤Ë¤è¤êÂн褹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

Ê£¿ô¤ÎPDF¥Õ¥¡¥¤¥ë¤Î¹çÀ®ÊýË¡

²¼µ­¥á¥½¥Ã¥É¤ò·«¤êÊÖ¤·¸Æ¤Ó½Ð¤¹¤À¤±¤Ç¤¹¡£Èó¾ï¤Ë´Êñ¤Ç¤¹¡£hello.php ¤ò¸µ¤Ë¤·¤¿¡¢Ê£¿ôPDF¥Õ¥¡¥¤¥ë¤ò·ë¹ç¤¹¤ë¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤Ï join.php ¤Ç¤¹¡£

PDF_open_pdi_document()
PDF_open_pdi_page()
PDF_begin_page_ext()
PDF_fit_pdi_page()
PDF_end_page_ext()
PDF_close_pdi_page()
PDF_close_pdi_document()

Perl ÈÇ PPS ¤Ç¤ÎÆüËܸìɽ¼¨

PDFlib 6 ¤Î¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ëƱº­¤Î businesscard.pl ¤ò¥Ù¡¼¥¹¤Ë¡¢ÆüËܸì¤òɽ¼¨¤¹¤ë¤¿¤á¤Î´Êñ¤Ê½èÍý¤òÄɲä·¤¿¥×¥í¥°¥é¥à¤Î Perl ÈÇ(businesscard.pl)¤Ç¤¹¡£

¥×¥í¥°¥é¥àÆâ¤Îʸ»ú¥³¡¼¥É¤Ï SJIS ¤Ç¤¹¤Î¤Ç¡¢Linux ¤ä Solaris Åù¤Î Unix ·Ï OS ¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç¤Ï¥×¥í¥°¥é¥à¤Îʸ»ú¥³¡¼¥É¤ò EUC ¤Ë¤·¤Æ¡¢Jcode::convert()¤ËÅϤ¹ $from ¤ÎÃͤò 'euc-jp' ¤Ë½ñ¤­´¹¤¨¤Æ¤¯¤À¤µ¤¤(¥Õ¥¡¥¤¥ë¤Îʸ»ú¥³¡¼¥É¤È Jcode::convert()¤Î°ú¿ô¤¬¤¢¤Ã¤Æ¤¤¤Ê¤¤¤È¡¢¤ª¤½¤é¤¯½ÐÎϤµ¤ì¤¿Ê¸»ú¤¬Ê¸»ú²½¤±¤¹¤ë¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡Ë¡£

.TTC ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥©¥ó¥È¤Î»ØÄêÊýË¡

msgothic.ttc Åù¤Î¤è¤¦¤Ë³ÈÄ¥»Ò¤¬ .ttc ¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢Ê£¿ô¤Î TrueType ¥Õ¥©¥ó¥È(*.TTF)¥Õ¥¡¥¤¥ë¤ò°ì¤Ä¤Ë¤Þ¤È¤á¤¿¥Õ¥©¥ó¥È¥Õ¥¡¥¤¥ë¤Ç¤¹¡£³Æ¥Õ¥©¥ó¥È¤Î̾Á°¤òľÀÜ»ØÄꤹ¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¤¬¡¢ºÇ¤â´Êñ¤ÊÊýË¡¤Ï²¼µ­¤Î¤è¤¦¤Ë .TTC ¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥Õ¥©¥ó¥È¤òÈÖ¹æ¤Ç»ØÄꤷ¤Þ¤¦¤³¤È¤Ç¤¹¡£¡Ömsgothic¡×¤ä¡Ömsmincho¡×¤ÏÊÑ¿ô̾¤Î¤è¤¦¤Ê¤â¤Î¤Ê¤Î¤Ç¡¢¥æ¥Ë¡¼¥¯¤Ê±Ñ¿ô»ú¤Ç¤¢¤ì¤ÐÆÃ¤Ë²¿¤Ç¤â¤«¤Þ¤¤¤Þ¤»¤ó¡£

PDF_set_parameter($p, "FontOutline", "msgothic=/tmp/msgothic.ttc");
PDF_set_parameter($p, "FontOutline", "msmincho=/tmp/msmincho.ttc");

// msmincho ¤Î1ÈÖÌܤΥե©¥ó¥È¤Î¾ì¹ç
$font = PDF_load_font($p, "msmincho:0", "unicode", "embedding");

// msgothic ¤Î3ÈÖÌܤΥե©¥ó¥È¤Î¾ì¹ç
$font = PDF_load_font($p, "msmincho:2", "unicode", "embedding");

PDFlib ¥Ö¥í¥Ã¥¯¤Ë»ØÄꤹ¤ë¾ì¹ç¡¢²¼µ­¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹(encode=unicode ¤Ç¤¢¤ë¤³¤È¤ËÃí°Õ¡Ë¡£

PDF_set_parameter($p, "FontOutline", "hogehoge=msgothic.ttc");
PDF_fill_textblock($p, $page, "org", $org, 
  "fontname hogehoge:1 fontsize 20 encoding unicode textformat utf8");

¥Æ¥­¥¹¥È¥Õ¥í¡¼¤Îʸ»úÎó¤Î¶ÑÅù³äÉÕ

ÆüÃæ´Úʸ»ú¤Î¾ì¹ç¤Ë¤Ï²¼µ­¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç¡¢¤¤¤¤´¶¤¸¤Îɽ¼¨¤Ë¤Ê¤ê¤Þ¤¹¡£

hyphenchar=none alignment=justify lastalignment=justify adjustmethod=spread spreadlimit=10000%

¤Ê¤ª alignment=justify ¤Î¤ßÀßÄꤷ¤Æ¤¤¤ë¾ì¹ç¡¢¥Æ¥­¥¹¥È¥Õ¥í¡¼¤ÎÀßÄêÈÏ°ÏÆâ¤Ëʸ»úÎ󤬼ý¤Þ¤ë¾ì¹ç¤Ë¤Ï alignment=left ¤ÈƱÅù¤Îɽ¼¨¤È¤Ê¤ê¤Þ¤¹¤Î¤ÇÃí°Õ¤¬É¬ÍפǤ¹¡£

¿§ÀßÄê¤ò CMYK ¤Ë¤·¤¿¤¤

PDF_load_iccprofile()´Ø¿ô¤ÇICC¥×¥í¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤à¤³¤È¤Ç¡¢ÀßÄê²Äǽ¤Ç¤¹¡£Japan Color 2001 Coated ¤Ê¤É¡¢¹ñÆâ¤Ç»È¤ï¤ì¤Æ¤¤¤ëICC¥×¥í¥Õ¥¡¥¤¥ë¤Ï Adobe ICC¥×¥í¥Õ¥¡¥¤¥ë ¤«¤é¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤¹¡£

²¼µ­¤Ï¡¢Adobe ¤«¤é¥À¥¦¥ó¥í¡¼¥É¤·¤¿ ICC¥×¥í¥Õ¥¡¥¤¥ë(Japan Color 2001 Coated)¤òÆÉ¤ß¹þ¤ß¡¢CMYK ¤ËÀßÄꤷ¤Æ¤¤¤ëÎã¤Ç¤¹¡£

define('PATH_ICC', '/usr/local/pdflib7/resource/icc/AdobeICCProfiles_jp');

$p = PDF_new();
if (PDF_begin_document($p, "", "") == 0) { die("Error: " . PDF_get_errmsg($p)); }

PDF_set_parameter($p, "SearchPath", PATH_ICC);

PDF_begin_page_ext($p, 1000, 1000, "");

$icchandle = PDF_load_iccprofile($p, "JapanColor2001Coated", "usage=iccbased");
if ($icchandle == 0) {
  echo PDF_get_errmsg($p);
 exit;
}
PDF_set_value($p, "setcolor:iccprofilecmyk", $icchandle );
PDF_setcolor($p, "fill", "iccbasedcmyk", 0,1,0,0);

PDFlib ¤Çʸ»ú¤ò½¤¾þ(ÂÀ»ú¤ä²¼Àþ¤Ê¤É¡Ë¤·¤¿¤¤

PDFlib ¤Çʸ»ú¤ò¥¤¥¿¥ê¥Ã¥¯¤äÂÀ»ú¤Ë¤¹¤ë¾ì¹ç¡¢PDF_load_font()¤Î fontstyle ¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç¼Â¸½²Äǽ¤Ç¤¹(¥Æ¥­¥¹¥È¥Õ¥í¡¼¤Î¾ì¹ç¡¢PDF_create_textflow()´Ø¿ô¤Ç»ØÄê)

»ØÄê¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ï¡¢ÆüËܸì¥Þ¥Ë¥å¥¢¥ë(¥ê¥Õ¥¡¥ì¥ó¥¹)¤ÎP.42¡Öɽ3.4 PDF_load_font()¤Î¥ª¥×¥·¥ç¥ó¡×¤Ë¤¢¤ê¤Þ¤¹¡£

¤Þ¤¿¥¢¥ó¥À¡¼¥é¥¤¥ó¤Ï¡¢set_parameter()¥á¥½¥Ã¥É¤Ç underline ¤Ë true ¤òÀßÄꤹ¤ë¤³¤È¤Ç¡¢»ØÄê²Äǽ¤Ç¤¹(¥Æ¥­¥¹¥È¥Õ¥í¡¼¤Î¾ì¹ç¤Ï¡¢²¼Àþ¤ò»ØÄꤹ¤ëʸ»úÎó¤ò¥¿¥°¤Ç°Ï¤ß¤Þ¤¹)¡£

¢¥Ìܼ¡

¤³¤ì¤Ã¤Æ¥Ð¥°¡©

PHP ¤Ç¥µ¥ó¥×¥ë¤ò¼Â¹Ô¤¹¤ë¤È¥¨¥é¡¼¤¬½ÐÎϤµ¤ì¤Þ¤¹

FreeBSD4.5 ¤ä°ìÉô¤Î´Ä¶­¤Ë¤ª¤¤¤Æ¡¢PHP ¤Ç PDFlib ¤ò¼Â¹Ô¤¹¤ë¤È²¼µ­¤Î¤è¤¦¤Ê¥¨¥é¡¼¤¬É½¼¨¤µ¤ì¤ë´Ä¶­¤¬¤¢¤ê¤Þ¤¹(xxxxx ¤Ï´Ø¿ô̾Åù)¡£

/usr/libexec/ld-elf.so.1: /usr/local/php4/lib/php/libpdf_php.so: Undefinedsymbol "xxxxx"

¤³¤ì¤Ï¥é¥¤¥Ö¥é¥ê¤Î°ìÉô¤ËÈó¸ß´¹À­¤¬¤¢¤ë¤«¤éȯÀ¸¤·¤Æ¤¤¤ë¤â¤Î¤Î¤è¤¦¤Ç¤¹¡£Âкö¤Ï´Êñ¤Ç¡¢DSO ÈǤΠpdflib ¤ò¼«Á°¤Ç¥Ó¥ë¥É¤·¤Æ¤·¤Þ¤¦¤³¤È¤Ç¤¹¡£¼ê½ç¤Ï DSO ÈÇ PDFlib ¤Î¼«Á°¥Ó¥ë¥É ¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£

Windows ÍѤΠPHP ¤Ç¡¢³°Éô¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤á¤Ê¤¤

Windows ÍѤΠPHP ¤Ç¤Ï¡¢PHP ¦¤Îµ¡Ç½À©¸Â¤Ë¤è¤ê PDFlib ¤ÇÁêÂХѥ¹¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤½¤Î¤¿¤á¿÷·Á PDF ¤ä²èÁüÅù¤òÆÉ¤ß¹þ¤à¾ì¹ç¤Ë¤Ï¡¢PDF_open_pdi()Åù¡¢³°Éô¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤à´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹Á°¤Ë²¼µ­¤Î¤è¤¦¤Ë SearchPath ¤òÀßÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹(¥Ñ¥¹¤ËÁêÂХѥ¹¤ò»ØÄꤹ¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó)¡£

PDFlib Ʊº­¤Î¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤Ë¤ª¤¤¤Æ¤â¡¢SearchPath ¤ò²¼µ­¤ÎÎã¤Î¤è¤¦¤ËÀäÂХѥ¹¤ËÊѹ¹¤·¤Æ¤ä¤é¤Ê¤¤¤È¥¨¥é¡¼¤È¤Ê¤ë¤Î¤ÇÃí°Õ¤·¤Þ¤·¤ç¤¦¡£

$searchpath = "c:/Apache Group/Apache/htdocs/560-0201.pdf";
PDF_set_parameter($p, "SearchPath", $searchpath);

PDFlib ¤ÇÀ¸À®¤·¤¿ PDF ¥Õ¥¡¥¤¥ë¤ò Acrobat 8 ¤Ç°õºþ¤·¤è¤¦¤È¤¹¤ë¤È¥¨¥é¡¼¤¬½Ð¤Þ¤¹

¥é¥¤¥»¥ó¥¹¥­¡¼¤òÀßÄꤷ¤Æ¤¤¤Ê¤¤¡Êwww.pdflib.com ¤È¤¤¤¦¥í¥´¤¬½ÐÎϤµ¤ì¤Æ¤¤¤ë) PDFlib ¤ÇÀ¸À®¤·¤¿ PDF ¥Õ¥¡¥¤¥ë¤ò Acrobat 8 ¤Ç°õºþ¤·¤è¤¦¤È¤¹¤ë¤È¡¢¡Ö°õºþ¥¸¥ç¥Ö¤ò³«»Ï¤Ç¤­¤Þ¤»¤ó¡£¥×¥ê¥ó¥¿¤ÏÍøÍѲÄǽ¤Ç¤¹¤«¡©¡×¡Ê²èÁü£±¡Ë¤Èɽ¼¨¤µ¤ì¡¢OK¤ò²¡²¼¤¹¤ë¤È¡ÖÉÁ²è¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£¡×¡Ê²èÁü£²¡Ë¤Èɽ¼¨¤µ¤ì¤¿¸å¤Ë¡¢¡Öwww.pdflib.com¡×¤È¤¤¤¦¥í¥´¤¬Ìµ¤¤¾õÂ֤ǰõºþ¤µ¤ì¤ë¤È¤¤¤¦¸½¾Ý¤¬³Îǧ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

¤³¤ì¤Ï PDFlib ML(±Ñ¸ì) ¤Î Printing errors when printing pdftest sample ¤Ë¤âÀâÌÀ¤¬¤¢¤ê¤Þ¤¹¤¬¡¢¡Öwww.pdflib.com¡×¤È¤¤¤¦¥í¥´¤Ë¤â»ÈÍѤµ¤ì¤Æ¤¤¤ë Type 3 ¥Õ¥©¥ó¥È¤òÈóPostScript¥×¥ê¥ó¥¿¤Ë½ÐÎϤ·¤¿»þ¤Î¡¢Acrobat Reader 8 ¤Î¥Ð¥°¤Ë¤è¤ë¤â¤Î¤Ç¤¹¡£¤³¤Î¸½¾Ý¤ÏPostScript¥×¥ê¥ó¥¿¤Ë½ÐÎϤ·¤¿¾ì¹ç¤ä¡¢Â¾¤Î¥Õ¥©¥ó¥È¤Î¾ì¹ç¤Ë¤ÏȯÀ¸¤·¤Þ¤»¤ó(¤Þ¤¿ Acrobat Reader 7 °Ê²¼¤Ç¤âȯÀ¸¤·¤Þ¤»¤ó¡Ë¡£

Ä̾ï Type 3 ¥Õ¥©¥ó¥È¤ò»È¤¦¤³¤È¤Ï¤Û¤È¤ó¤É̵¤¯¡¢¤Þ¤¿¡¢¥é¥¤¥»¥ó¥¹¥­¡¼¤ò¹ØÆþ¤¹¤ì¤Ð Type 3 ¥Õ¥©¥ó¥È¤ò»ÈÍѤ·¤Æ¤¤¤ë¡Öwww.pdflib.com¡×¤È¤¤¤¦¥í¥´¤ò¾Ã¤»¤ë¤¿¤á¼Â»ÈÍѾå¤Ë¤Ï¤Þ¤Ã¤¿¤¯ÌäÂꤢ¤ê¤Þ¤»¤ó¤¬¡¢Acrobat Reader 8 ¤Ïµóư¤¬ÊѤï¤Ã¤¿²Õ½ê¤â¿¤¤¤¿¤á¡¢¸Ä¿ÍŪ¤Ë¤Ï¤¢¤Þ¤ê¤ªÁ¦¤á¤·¤Þ¤»¤ó¡£¤Þ¤¿ PDF ¤Î²ò¼á¤¬ Acrobat Reader 7 °ÊÁ°¤È¾¯¤·ÊѤï¤ê¡¢ÆÃ¤Ë PDF »ÅÍͤ«¤é¤¹¤ë¤È¾¯¤·ÊÑ¤Ê PDF ¤òÆÉ¤ß¹þ¤ó¤ÀºÝ¤Îɽ¼¨·ë²Ì¤¬°Û¤Ê¤Ã¤Æ¤¤¤ë¤¿¤á¡¢PDF »ÅÍͤËÀµ¤·¤¯½àµò¤·¤Æ¤¤¤Ê¤¤ PDF ¤ò½ÐÎϤ¹¤ëÀ½ÉʤǤÏÃí°Õ¤¬É¬ÍפǤ¹(PDFlib ¤Ç¤Ï¤½¤¦¤¤¤¦¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó¡Ë¡£

¢¥Ìܼ¡

¤è¤¯¤¢¤ë¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤È¤½¤Î¸¶°ø

Fatal error: Uncaught exception 'PDFlibException' with message 'Font 'KozMinProVI-Regular' with
encoding 'EUC-H': Couldn't open CMap file 'EUC-H' for reading (file not found)'

PDFlib/PDI/PPS 7 °Ê¹ß¤Ç¡¢CMap ¤òÀßÄꤷ¤Æ¤¤¤Ê¤¤»þ¤ËȯÀ¸¤¹¤ë¥¨¥é¡¼¤Ç¤¹¡£CMap ¤ä¥Õ¥©¥ó¥È¤Ë¤Ä¤¤¤Æ ¤ä¥µ¥ó¥×¥ë¥³¡¼¥É¤ò»²¹Í¤Ë¡¢CMap ¤òÀßÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£


Fatal error:  Uncaught exception 'PDFlibException' with message 'License does not cover PDI and 
PDFlib Personalization Server (PPS)'

PDFlib ¤Î¥é¥¤¥»¥ó¥¹¥­¡¼¤Ç PDFlib+PDI ¤« PPS ¤Îµ¡Ç½¡¢¤¢¤ë¤¤¤Ï PDFlib+PDI ¤Î¥é¥¤¥»¥ó¥¹¥­¡¼¤Ç PPS ¤Îµ¡Ç½¤ò»È¤ª¤¦¤È¤·¤¿»þ¤Î¥¨¥é¡¼¤Ç¤¹¡£PDFlib/PDI/PPS À½Éʤΰ㤤¤Ë¤Ä¤¤¤Æ ¤ò»²¹Í¤Ë¡¢É¬Íפʵ¡Ç½¤ò»ý¤ÄÀ½Éʤ˥¢¥Ã¥×¥°¥ì¡¼¥É¤·¤Æ¤¯¤À¤µ¤¤¡£


PDFlib exception occurred in hello sample: [1986] set_parameter: Invalid license key

̵¸ú¤Ê¥é¥¤¥»¥ó¥¹¥­¡¼¤¬»ØÄꤵ¤ì¤¿¡¢¤¢¤ë¤¤¤Ïµì¥Ð¡¼¥¸¥ç¥ó¤Î¥é¥¤¥»¥ó¥¹¥­¡¼¤ò»ØÄꤷ¤¿¾ì¹ç¤Î¥¨¥é¡¼¤Ç¤¹¡£Àµ¤·¤¤¥é¥¤¥»¥ó¥¹¥­¡¼¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£


¢¥Ìܼ¡


<< PDFlib HOWTO ¤ËÌá¤ë

¢¥Ìܼ¡