Login
Log in using an SSO provider:
Fedora Account System
Red Hat Associate
Red Hat Customer
Login using a Red Hat Bugzilla account
Forgot Password
Create an Account
Red Hat Bugzilla – Attachment 331737 Details for
Bug 471811
RfE: Need CNI sub package to resurrect pdftk
Home
New
Search
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh92 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
[?]
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
link to internal itext library
pdftk-use-internal-itext.patch (text/plain), 15.35 KB, created by
Orcan Ogetbil
on 2009-02-12 19:58:28 UTC
(
hide
)
Description:
link to internal itext library
Filename:
MIME Type:
Creator:
Orcan Ogetbil
Created:
2009-02-12 19:58:28 UTC
Size:
15.35 KB
patch
obsolete
> > > > >diff -r -u /tmp/pdftk-1.41/pdftk/attachments.cc ./pdftk/attachments.cc >--- /tmp/pdftk-1.41/pdftk/attachments.cc 2004-10-27 02:57:44.000000000 +0100 >+++ ./pdftk/attachments.cc 2009-02-12 15:38:08.000000000 +0000 >@@ -51,7 +51,11 @@ > > #include "com/lowagie/text/Document.h" > #include "com/lowagie/text/Rectangle.h" >+// Ewww, PdfName has a field called NULL. >+#undef NULL > #include "com/lowagie/text/pdf/PdfName.h" >+#define NULL __null >+ > #include "com/lowagie/text/pdf/PdfString.h" > #include "com/lowagie/text/pdf/PdfNumber.h" > #include "com/lowagie/text/pdf/PdfArray.h" >@@ -148,8 +152,8 @@ > > itext::Rectangle* crop_box_p= > input_reader_p->getCropBox( m_input_attach_file_pagenum ); >- float corner_top= crop_box_p->top()- margin; >- float corner_left= crop_box_p->left()+ margin; >+ float corner_top= crop_box_p->getTop()- margin; >+ float corner_left= crop_box_p->getLeft()+ margin; > > itext::PdfArray* annots_p= (itext::PdfArray*) > input_reader_p->getPdfObject( page_p->get( itext::PdfName::ANNOTS ) ); >@@ -187,11 +191,11 @@ > string filename= drop_path(*vit); > > // wrap our location over page bounds, if needed >- if( crop_box_p->right() < corner_left+ trans ) { >- corner_left= crop_box_p->left()+ margin; >+ if( crop_box_p->getRight() < corner_left+ trans ) { >+ corner_left= crop_box_p->getLeft()+ margin; > } >- if( corner_top- trans< crop_box_p->bottom() ) { >- corner_top= crop_box_p->top()- margin; >+ if( corner_top- trans< crop_box_p->getBottom() ) { >+ corner_top= crop_box_p->getTop()- margin; > } > > itext::Rectangle* annot_bbox_p= >diff -r -u /tmp/pdftk-1.41/pdftk/Makefile.Base ./pdftk/Makefile.Base >--- /tmp/pdftk-1.41/pdftk/Makefile.Base 2006-10-25 00:44:06.000000000 +0100 >+++ ./pdftk/Makefile.Base 2009-02-12 13:40:04.000000000 +0000 >@@ -15,34 +15,12 @@ > # them into fonts.a resulted in none of these resources appearing in pdftk > # (on MinGW gcj 3.4.1) > # >-itext_libs= \ >-$(java_libs_root)/com/lowagie/text/pdf/pdf.a \ >-$(java_libs_root)/com/lowagie/text/text.a \ >-$(java_libs_root)/com/lowagie/text/pdf/pdf.a \ >-$(java_libs_root)/com/lowagie/text/pdf/codec/codec.a \ >-$(java_libs_root)/com/lowagie/text/pdf/codec/wmf/wmf.a \ >-$(java_libs_root)/com/lowagie/text/pdf/fonts/fonts.a \ >-$(java_libs_root)/com/lowagie/text/markup/markup.a \ >-$(java_libs_root)/com/lowagie/text/xml/xmp/xmp.a \ >-$(java_libs_root)/com/lowagie/bc/asn1/asn1.a \ >-$(java_libs_root)/com/lowagie/text/pdf/codec/postscript/postscript.a \ >+itext_libs=$(LIBDIR)/gcj/itext/itext-2.1.4.jar.so > > # font metric files, included as resources > afms= $(wildcard $(java_libs_root)/com/lowagie/text/pdf/fonts/*.afm) > afm_objects= $(patsubst %.afm, %.o, $(afms)) > >-# older versions of libgcj might not have the MD5 algorithm, >-# so I added it here; these *_local java files were grabbed from >-# libgcj CVS on March 7, 2004; diffed September 5, 2006 w/ gcc 4.1.1 >-# >-# gnu/gcj/convert/Input_UnicodeBig.java was grabbed March 26, 2004; diffed September 5, 2006 w/ gcc 4.1.1 >-# >-libgcj_local_libs = \ >-$(java_libs_root)/java_local/security/security.a \ >-$(java_libs_root)/gnu_local/java/security/provider/provider.a \ >-$(java_libs_root)/gnu_local/java/security/security.a \ >-$(java_libs_root)/gnu/gcj/convert/convert.a >- > # this must already be set according to your platform Makefile; > # we're just appending to it, here > # >@@ -51,19 +29,18 @@ > all : java_libs pdftk > > java_libs : >- $(MAKE) -C $(java_libs_root) > >-attachments.o : attachments.cc attachments.h pdftk.h $(itext_libs) $(libgcj_local_libs) >+attachments.o : attachments.cc attachments.h pdftk.h $(itext_libs) > $(CXX) attachments.cc -I$(java_libs_root) $(CPPFLAGS) -c > >-report.o : report.cc report.h pdftk.h $(itext_libs) $(libgcj_local_libs) >+report.o : report.cc report.h pdftk.h $(itext_libs) > $(CXX) report.cc -I$(java_libs_root) $(CPPFLAGS) -c > >-pdftk.o : pdftk.cc pdftk.h attachments.h report.h $(itext_libs) $(libgcj_local_libs) >+pdftk.o : pdftk.cc pdftk.h attachments.h report.h $(itext_libs) > $(CXX) pdftk.cc -I$(java_libs_root) $(CPPFLAGS) -c > >-pdftk : pdftk.o attachments.o report.o $(itext_libs) $(libgcj_local_libs) $(afm_objects) >- $(CXX) pdftk.o attachments.o report.o $(itext_libs) $(libgcj_local_libs) $(afm_objects) -I$(java_libs_root) $(CPPFLAGS) $(CXXFLAGS) -o pdftk >+pdftk : pdftk.o attachments.o report.o $(itext_libs) $(afm_objects) >+ $(CXX) pdftk.o attachments.o report.o $(itext_libs) $(afm_objects) -I$(java_libs_root) $(CPPFLAGS) $(CXXFLAGS) -o pdftk > > install: > /usr/bin/install pdftk /usr/local/bin >diff -r -u /tmp/pdftk-1.41/pdftk/Makefile.RedHat ./pdftk/Makefile.RedHat >--- /tmp/pdftk-1.41/pdftk/Makefile.RedHat 2006-09-21 18:37:38.000000000 +0100 >+++ ./pdftk/Makefile.RedHat 2009-02-12 12:18:43.000000000 +0000 >@@ -26,12 +26,12 @@ > # if you want pdftk to ask before overwriting a file, set > # ASK_ABOUT_WARNINGS to true; otherwise: false; override this default > # with the dont_ask or do_ask command-line options >-CPPFLAGS= -O2 -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -fdollars-in-identifiers >+CPPFLAGS= ${RPM_OPT_FLAGS} -DPATH_DELIM=0x2f -DASK_ABOUT_WARNINGS=false -fdollars-in-identifiers -g -fpic > CXXFLAGS= -lgcj > > # itext compiler flags > # -O3 might cause pdftk to segfault on cat operation (gcc 3.4.4) >-export GCJFLAGS= -O2 >+export GCJFLAGS= ${RPM_OPT_FLAGS} > > # > export ARFLAGS= rs >diff -r -u /tmp/pdftk-1.41/pdftk/pdftk.cc ./pdftk/pdftk.cc >--- /tmp/pdftk-1.41/pdftk/pdftk.cc 2006-11-28 22:51:36.000000000 +0000 >+++ ./pdftk/pdftk.cc 2009-02-12 16:28:33.000000000 +0000 >@@ -50,7 +50,12 @@ > > #include "com/lowagie/text/Document.h" > #include "com/lowagie/text/Rectangle.h" >+ >+// Ewww, PdfName has a field called NULL. >+#undef NULL > #include "com/lowagie/text/pdf/PdfName.h" >+#define NULL __null >+ > #include "com/lowagie/text/pdf/PdfString.h" > #include "com/lowagie/text/pdf/PdfNumber.h" > #include "com/lowagie/text/pdf/PdfArray.h" >@@ -191,7 +196,8 @@ > // store in this java object so the gc can trace it > g_dont_collect_p->addElement( reader ); > >- input_pdf_p->m_authorized_b= ( !reader->encrypted || reader->passwordIsOwner ); >+ input_pdf_p->m_authorized_b= ( !reader->encrypted // || reader->passwordIsOwner >+ ); > if( !input_pdf_p->m_authorized_b ) { > open_success_b= false; > } >@@ -203,6 +209,7 @@ > open_success_b= false; > } > catch( java::lang::Throwable* t_p ) { // unexpected error >+ t_p->printStackTrace(); > cerr << "Error: Unexpected Exception in open_reader()" << endl; > open_success_b= false; > >@@ -2017,14 +2024,14 @@ > output_doc_p->addCreator( jv_creator_p ); > > // un/compress output streams? >- if( m_output_uncompress_b ) { >- writer_p->filterStreams= true; >- writer_p->compressStreams= false; >- } >- else if( m_output_compress_b ) { >- writer_p->filterStreams= false; >- writer_p->compressStreams= true; >- } >+// if( m_output_uncompress_b ) { >+// writer_p->filterStreams= true; >+// writer_p->compressStreams= false; >+// } >+// else if( m_output_compress_b ) { >+// writer_p->filterStreams= false; >+// writer_p->compressStreams= true; >+// } > > // encrypt output? > if( m_output_encryption_strength!= none_enc || >@@ -2033,7 +2040,7 @@ > { > // if no stregth is given, default to 128 bit, > // (which is incompatible w/ Acrobat 4) >- bool bit128_b= >+ jboolean bit128_b= > ( m_output_encryption_strength!= bits40_enc ); > > writer_p->setEncryption( output_user_pw_p, >@@ -2057,7 +2064,8 @@ > input_reader_p->getPdfObject( trailer_p->get( itext::PdfName::ID ) ); > if( file_id_p && file_id_p->isArray() ) { > >- writer_p->setFileID( file_id_p ); >+ // Absent from itext-2.1.4 >+// writer_p->setFileID( file_id_p ); > } > } > >@@ -2168,12 +2176,14 @@ > > // un/compress output streams? > if( m_output_uncompress_b ) { >- writer_p->filterStreams= true; >- writer_p->compressStreams= false; >+ // Absent from itext-2.1.4 >+// writer_p->filterStreams= true; >+// writer_p->compressStreams= false; > } > else if( m_output_compress_b ) { >- writer_p->filterStreams= false; >- writer_p->compressStreams= true; >+ // Absent from itext-2.1.4 >+// writer_p->filterStreams= false; >+// writer_p->compressStreams= true; > } > > // encrypt output? >@@ -2183,7 +2193,7 @@ > { > // if no stregth is given, default to 128 bit, > // (which is incompatible w/ Acrobat 4) >- bool bit128_b= >+ jboolean bit128_b= > ( m_output_encryption_strength!= bits40_enc ); > > writer_p->setEncryption( output_user_pw_p, >@@ -2403,13 +2413,15 @@ > // un/compress output streams? > if( m_output_uncompress_b ) { > add_marks_to_pages( input_reader_p ); >- writer_p->filterStreams= true; >- writer_p->compressStreams= false; >+ // Absent from itext-2.1.4 >+// writer_p->filterStreams= true; >+// writer_p->compressStreams= false; > } > else if( m_output_compress_b ) { > remove_marks_from_pages( input_reader_p ); >- writer_p->filterStreams= false; >- writer_p->compressStreams= true; >+ // Absent from itext-2.1.4 >+// writer_p->filterStreams= false; >+// writer_p->compressStreams= true; > } > > // encrypt output? >@@ -2420,13 +2432,13 @@ > > // if no stregth is given, default to 128 bit, > // (which is incompatible w/ Acrobat 4) >- bool bit128_b= >+ jboolean bit128_b= > ( m_output_encryption_strength!= bits40_enc ); > > writer_p->setEncryption( output_user_pw_p, > output_owner_pw_p, > m_output_user_perms, >- bit128_b ); >+ bit128_b ); > } > > // fill form fields? >@@ -2435,8 +2447,11 @@ > { > itext::AcroFields* fields_p= writer_p->getAcroFields(); > fields_p->setGenerateAppearances( true ); // have iText create field appearances >- if( fdf_reader_p && fields_p->setFields( fdf_reader_p ) || >- xfdf_reader_p && fields_p->setFields( xfdf_reader_p ) ) >+ if( fdf_reader_p ) >+ fields_p->setFields( fdf_reader_p ); >+ if( xfdf_reader_p ) >+ fields_p->setFields( xfdf_reader_p ); >+ > { // Rich Text input found > > // set the PDF so that Acrobat will create appearances; >@@ -2486,16 +2501,16 @@ > doc_page_size_p= doc_page_size_p->rotate(); > } > >- jfloat h_scale= doc_page_size_p->width() / mark_page_size_p->width(); >- jfloat v_scale= doc_page_size_p->height() / mark_page_size_p->height(); >+ jfloat h_scale= doc_page_size_p->getWidth() / mark_page_size_p->getWidth(); >+ jfloat v_scale= doc_page_size_p->getHeight() / mark_page_size_p->getHeight(); > jfloat mark_scale= (h_scale< v_scale) ? h_scale : v_scale; > >- jfloat h_trans= (jfloat)(doc_page_size_p->left()- mark_page_size_p->left()* mark_scale + >- (doc_page_size_p->width()- >- mark_page_size_p->width()* mark_scale) / 2.0); >- jfloat v_trans= (jfloat)(doc_page_size_p->bottom()- mark_page_size_p->bottom()* mark_scale + >- (doc_page_size_p->height()- >- mark_page_size_p->height()* mark_scale) / 2.0); >+ jfloat h_trans= (jfloat)(doc_page_size_p->getLeft()- mark_page_size_p->getLeft()* mark_scale + >+ (doc_page_size_p->getWidth()- >+ mark_page_size_p->getWidth()* mark_scale) / 2.0); >+ jfloat v_trans= (jfloat)(doc_page_size_p->getBottom()- mark_page_size_p->getBottom()* mark_scale + >+ (doc_page_size_p->getHeight()- >+ mark_page_size_p->getHeight()* mark_scale) / 2.0); > > com::lowagie::text::pdf::PdfContentByte* content_byte_p= > ( background_b ) ? writer_p->getUnderContent( ii ) : writer_p->getOverContent( ii ); >@@ -2512,20 +2527,20 @@ > 0, -1* mark_scale, > mark_scale, 0, > h_trans, >- v_trans+ mark_page_size_p->height()* mark_scale ); >+ v_trans+ mark_page_size_p->getHeight()* mark_scale ); > } > else if( mark_page_rotation== 180 ) { > content_byte_p->addTemplate( mark_page_p, > -1* mark_scale, 0, > 0, -1* mark_scale, >- h_trans+ mark_page_size_p->width()* mark_scale, >- v_trans+ mark_page_size_p->height()* mark_scale ); >+ h_trans+ mark_page_size_p->getWidth()* mark_scale, >+ v_trans+ mark_page_size_p->getHeight()* mark_scale ); > } > else if( mark_page_rotation== 270 ) { > content_byte_p->addTemplate( mark_page_p, > 0, mark_scale, > -1* mark_scale, 0, >- h_trans+ mark_page_size_p->width()* mark_scale, v_trans ); >+ h_trans+ mark_page_size_p->getWidth()* mark_scale, v_trans ); > } > } > } >@@ -2537,7 +2552,7 @@ > } > > // done; write output >- writer_p->close(); >+ writer_p->close(NULL); > } > break; > >@@ -2663,15 +2678,15 @@ > JvCreateJavaVM(NULL); > JvAttachCurrentThread(NULL, NULL); > >- JvInitClass(&java::System::class$); >- JvInitClass(&java::util::ArrayList::class$); >- JvInitClass(&java::util::Iterator::class$); >- >- JvInitClass(&itext::PdfObject::class$); >- JvInitClass(&itext::PdfName::class$); >- JvInitClass(&itext::PdfDictionary::class$); >- JvInitClass(&itext::PdfOutline::class$); >- JvInitClass(&itext::PdfBoolean::class$); >+// JvInitClass(&java::System::class$); >+// JvInitClass(&java::util::ArrayList::class$); >+// JvInitClass(&java::util::Iterator::class$); >+ >+// JvInitClass(&itext::PdfObject::class$); >+// JvInitClass(&itext::PdfName::class$); >+// JvInitClass(&itext::PdfDictionary::class$); >+// JvInitClass(&itext::PdfOutline::class$); >+// JvInitClass(&itext::PdfBoolean::class$); > > TK_Session tk_session( argc, argv ); > >diff -r -u /tmp/pdftk-1.41/pdftk/report.cc ./pdftk/report.cc >--- /tmp/pdftk-1.41/pdftk/report.cc 2006-09-06 00:49:32.000000000 +0100 >+++ ./pdftk/report.cc 2009-02-12 15:42:56.000000000 +0000 >@@ -50,8 +50,13 @@ > > #include "com/lowagie/text/Document.h" > #include "com/lowagie/text/Rectangle.h" >+#undef NULL >+ >+// Ewww, PdfName has a field called NULL. > #include "com/lowagie/text/pdf/PdfObject.h" > #include "com/lowagie/text/pdf/PdfName.h" >+#define NULL __null >+ > #include "com/lowagie/text/pdf/PdfString.h" > #include "com/lowagie/text/pdf/PdfNumber.h" > #include "com/lowagie/text/pdf/PdfArray.h" >@@ -1315,11 +1320,12 @@ > if( xmp_str_p ) { > xmp_str_p->put( itext::PdfName::TYPE, itext::PdfName::METADATA ); > xmp_str_p->put( itext::PdfName::SUBTYPE, itext::PdfName::XML ); >- >- itext::PdfIndirectReference* xmp_str_ref_p= >- (itext::PdfIndirectReference*)reader_p->getPRIndirectReference( xmp_str_p ); > >- catalog_p->put( itext::PdfName::METADATA, xmp_str_ref_p ); >+// FIXME: PdfReader.getPRIndirectReference is absent from itext-2.1.4 >+// itext::PdfIndirectReference* xmp_str_ref_p= >+// (itext::PdfIndirectReference*)reader_p->getPRIndirectReference( xmp_str_p ); >+ >+// catalog_p->put( itext::PdfName::METADATA, xmp_str_ref_p ); > } > else { > ret_val_b= false;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 471811
: 331737