Это мой код:
Код: Выделить всё
public class ImageExtractor : IRenderListener
{
// ....
public PdfReader reader = null;
List ImagesStream = new List();
private List ImageNames = new List();
public void dowork(PdfReader r)
{
reader = r;
var pdfParser = new PdfReaderContentParser(r);
var instance = new ImageExtractor();
while (i 0)
{
for (int j = 0; (j < instance.ImagesStream.Count); ++j)
{
MemoryStream imageStream = new MemoryStream(instance.ImagesStream[j]);
// create a FIBITMAP from- that stream
FIBITMAP dib = FreeImage.LoadFromStream(imageStream);
if (dib.IsNull)
{
continue;
}
// turn it into a normal Bitmap
Bitmap bitmap = FreeImage.GetBitmap(dib);
// unload the FIBITMAP
FreeImage.UnloadEx(ref dib);
Images.Add(bitmap);
bitmap.Dispose();
// unload the FIBITMAP
FreeImage.UnloadEx(ref dib);
}
}
}
public void BeginTextBlock()
{ }
public void EndTextBlock()
{ }
public void RenderText(TextRenderInfo renderInfo)
{ }
public void RenderImage(ImageRenderInfo renderInfo)
{
try
{
PdfImageObject image = renderInfo.GetImage();
if (renderInfo.GetRef() != null && image != null)
{
byte[] tempImage = image.GetImageAsBytes();
ImageNames.Add(string.Format("Image{0}.{1}", renderInfo.GetRef().Number, image.GetFileType()));
ImagesStream.Add(tempImage);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + "\n" + ex.StackTrace.ToString());
throw ex;
}
}
}
< /code>
Но Freeimageapi не извлекла ни одно изображение, и я открываю свой файл PDF с блокнотом и вижу тип фильтра, который является Jbig2decode, здесь является частью содержания PDF: < /p>
%PDF-1.4
%،³إ×
1 0 obj
endobj
2 0 obj
stream
xœ¥خف
‚0às¯â»‚mn2
D¨لپaشY¬±Bآںو*¼û¦رi|?ïةَâBqŒs‘¥@’© œê{¥ôتبD J±
Uïآ^5p…€E(¤î%ہ#EءtھpVH[طx°ج…‡çئV'©&m;tٍ\5زVmƒثغرژرNZmji.?!(ڑèqس1î&G3:uyô>ىûŒ
{+Xبُ9pتsق¢/بsذٍ1d5
endstream
endobj
3 0 obj
stream
ےے ”jœ¤r²îW[ءê\[sMىJWل“‚’X&ک±چéْ~#ô' zپلHnH5Œ|t~bOI؛پ$Z²ـ-ؤسôV&`k°هàُ‡uڑ®±‰6 `؛ع$nKE@رص£'x1ك‹¦E‘‚I†ڑ(ؤ[Itmہrژk´هث"$iF»ھ§ُ¤h)
Q—ç)gDس–½®S½
ظ¹J$‚ف„BکVےL@«خصGV6L†‡«î×ک½س-›Hِ'ç(د(*†
پ• &فFيˆ@ھ¥j:—زخLQ(nے+¾ٌœ.0ة¤_ں0`ژغ3÷S°ب²¼ع"·يeْ¶MàٌtŒdےD}s2¸¨ھخٌ8“"jٍxصَـ؛n@+°¬Sأ$ؤê5ذ‰bي±%"ے0€V’hY¦V>I7ّLFد5ع ïت[©حں,سہچg°¶êLîëٍ ؟$ڑزھF:W~Bوٍغ`µBNrـpcêٍDGïAچ;†0ضw«Xچض…;^‰tœ¥n¾zعqâˆ\bKإs9¦Eأvw&
ˆ¸ˆœ´خرآ×[¥Ikدtل=3¬T7êٹz¹fêêŒQs’و"ln,ء½X—¨%ةے[ہà\_ب!+mظأmطے ِ‰?¸2اbdّ+%iزm—ض±)*T|¢ق/9¤xjزBgه¹ûصnح×Sص½/ح–dàM،ے•±£@ٹ·JA`xa§ڑ“¥کِ}~¶d”#3;7خ'±³,´k}¦9¯¥َé4H# ”ù³t«”ث¢¬ًhصهu Œ؛+د=]َىEàؤ¥j.QàاIo_BàچuJب—?پوIn#"l6€„4ٌخژِ×@…آ .œêKrGف‚ء›yE’5GcV'PT!|@ئل§T\ؤپژS}Yع؛“ٌف4'م×4®›Rٌ•Po’©ےآ”5Vy¦r`éâû| ر> ƒGâدJ±ù>ع´TB/
‡ü]زUفl° µâ„`Pضû“\گc÷Wه”°WسٍC¢ى[?‹wsàœچٌ
F„ژèھGèrtسےK²èNkهCîIµ¦°–w)¬½ںéظ]'@ص“
e6}_¦L £بطûâسS‡t[چء¦¦î\½vgW¨qmê5ïqيK-60خy‡§Uçى^ز‰Z„Bo·+ï×ٌîaM®"8ç،£×؟±pˆS¤ôث >”jœcô؟¥¼¾†wC‘9ذ=¯½kW¬Zo‰8‡ٹX|Jژçyهك×^e{uv§è#èh°4uX¦‹وs–ـµشئَڈز_دًع73ؤد¥‚dhHچظhëŒ}Eے/كJ“ظX´أ®[hزù1'°ٍ’
فêـ#هضû’×p'k°mُؤر¶™¨R¯¼C²}{لطً›„s';("»أ`C=8™û8™xٌر "¤
#9êں½¦®آِک h إ'UrEذB«w,‘%صtP“ٌˆطW( صVW [bٌˆ¶~ƒW÷©Q®\^حإeWc™ئ¢¤ر…•ڈ€iلنw¶f:ہc¦؛¶\ف~³z¹Em;0i¾چsز9xW¦؟ç‰>€و.ض…dإپإرéDعhèد^د ’U¾5.h¤£ْµض?z!®ًuُ}¨ڑمه‰¹ُ‰©‰é`ذسٌ;ƒq°K–ص ى aDكظTtbMWزں9پk“ؤ|ص¾ىw-Péٍ‡ص5céشخ)g£ظع8¦tأL;3ür”
n”Zـêؤ"ïFںآrBJk 2‹{Omnمغ¾êخ·tج@طO®قMس#§®ں.®4ک9u—]ك}bّ—l&sWYZwىڑSˆ? –[r_(ط½û®،غثK‡ہ€د_¯؟èS‚àd“eحAj
u`D¨Lf:@×vV¢w¤VHcي€™hہCُpôf„RYXں›¾X$غثف .…)ڈî~·Uگً؟)3” ج£يإ¨ـ›چْئˆ›مگ‰ىت…ٹ°غےg×wwق“NKءس-„†£ٍé¥M7_ةp7‚ô´ه“hُ‡™"q6ژsسŒ©3‚رK؟ش،صHهŒR‘کچئƒُ@“C>xجفeH5Wd!±3™ًسهIزœإب÷آ.µغv‡îü"3فIJ—™صکـ”جـ
¯ë©،)¶èجكژےU—ى@n¸›dّ“K)`cچcنٹç¨غ—¢…P~>6"Os¹¹p_¼‚‚ثg.\yzMأَ[Z"~Zے,J:s{{Ay¦ڑآاےei6}،ط[ه$j ض’«©lüg=µع®ƒ_\|wغرحّS]ا:eAîب’CXaأ$àB|Jd‹Jè†ً’ZGء8S؛§أ|Vث;&5— ¥نhy
·IJظں„ىè°u³yiûس»¼SDخn u•»gڈuج¶2؛s/ذأm.،V¨½ء`؟´nœac-ù \{&ےS-3nc~سب”9›x+f¨هو~I"ہ{lyœ$ôdي®½‹¨[3ك–^هيç«•“ح™Dg¾kطنû¤W¼شi÷
,ل3ہدH#حùs•¨ـبDˆŒ-séüœ".ژ—«ü@ىf)Cùژ´%6´f5nL'éٌV
فMےmr‰تش¥ٹ…(ؤڑ®ٍp¾ûٌ³غꀰگ_غڈ2ذ•pج@سں|'qZïSٌqقaحb£BحgF ک"]چ£$‰ِبr¬ى¥أLل;¥,ŒسَqهR؟ب&ؤ–ج@^د¨ك{Aًت‚وf„ضد—¹ççں~ت$@~¥ر uïâ=Fطajحüـ3AEŒ›âر¸²kK/نَْ‹ظذ؟Nؤyىَï7*d³6ِf§،zپ]ئN%Z0رsئx
يEے¨”ّ5›"H.g¾„خ']:§×o€™w‰»’rêن¤M™ںٍ”8vvçإّقه[[Yhl†;µ’4S¬€3ٹ´b
)ïlأ~.µ÷——
ٹس2÷گpû•l«¦ئرs¶’^!“¼î:„ں %Tp…Iàk@êQ²ْOWؤ
K,ô-[j9ّèH_T3ذ¯S اü(×™ڈھjGپ)ëEkˆ/cے-yûl3³ڈل”q?‡غ¥û©¢j†yِ‡7طpà¾F0t-c,±غ حط±•ƒ%W¤كـy†شخU»ل.*ض,b¨‹,™à2µ’ôeج؟FE·„©ش´rع÷Oہظ§ü@¶S~خêëDEgVخP!‹;´طڑاَWأm‡}gٹ
9ةضsز_P]Œٍ»ژOL!&آ }ُةUœ(ƒ0éژT\F/Oàء4Wز¬f‹AحvTُ«پB³X تµeï¹yN¶JOةר¼jٍ°–ذpŒXعثںYه(îٌü›#ےC ؤhف¢kë²ê؟’–#pخTUع'8xˆةشQîOصڈ|½ژ(ط“´¤W`¾µ†گXr±hâأëع»ٌذ|ےإ‹$´I“{ùb'طû#épسàق|@…لQکœjLٌ]ن&
hOqKچa EجO¤ُGïVœ„qQ ھ[ح·*I—ٍغg وLتYH_ً:ج P؛k/q(fم=ةىّ–•rل
âC¸|Ff\#’ي¼و)›Yچ½Zç÷ظ üـ/ءûہ³¨ف£ـuجBھ“{سt ذhc2¼`Eسj& عYب©4K]ء2و¬³àِE¶6ژ)َà¢û ¨ˆzOrx¹@جéإg
W9:cèثyًٍ…[کc´#+²´؛§Yفy"ˆûù§(h_ê“ب$ٍّü0ƒuB·ةا¶ï‘yتŒآ§®dc{çگش§#فٹٹك€ے¬ 0 0 . @ Q 0 . d ) ” { ق { ک H ئ ^ ے … ھ ّ ز W ظ ‡ ; V P m Q v ± · ½ 5 ‰ û V ê Z ا , C ë m ³ • ش Z ش ج Œ س P ´ } I N L h % ر X × ÷ ¹ ‡ œ ’ ƒ Q ٍ ¯ ¶ ¦ » l R € a ج O v l & q u o t ; ھ ْ ² & a m p ; x % s x M ف ء 9 ئ ‹ ث إ ئ & a m p ; B v ¸ & l t ; r أ s µ ص € چ ' ى · ” ع † } „ ~ £ ة x & q u o t ; ص û ü £ ع f ق † n F = ى h v µ ا è R ْ è ـ ÷ m ش ] q ش ÷ [ ه ح ہ W ا ي أ < b r / > ک J M à ? } ; ‹ q 2 … f Z : ¢ © m u c „ e x ح = ˆ 5 ؟ „ < b r / > / ع د ¯ # ّ چ ة غ f . ا O G ڈ x ² … o < b r / > ث T O و ل ؟ ) ‡ • ز Q ‰ t - ° „ ل 2 ض „ َ خ i $ ¬ g / X Œ ] / ل { à ھ ت D ح × َ { ْ B - ٌ ½ ô ر d @ Q ± ¢ ں . ى ُ Q Z H ç T g ے ے ¬ < b r / > e n d s t r e a m < b r / > e n d o b j < b r / > 7 0 o b j < b r / > & l t ; & l t ; / C r o p B o x [ 8 . 5 0 3 9 4 8 . 5 0 3 9 4 4 3 3 . 0 9 6 6 7 4 . 2 9 6 ] / P a r e n t 8 0 5 0 R / S t r u c t P a r e n t s 3 / C o n t e n t s 8 0 R / R o t a t e 0 / M e d i a B o x [ 0 0 4 4 1 . 6 6 8 2 . 8 ] / R e s o u r c e s & l t ; & l t ; / X O b j e c t & l t ; & l t ; / I m 0 9 0 R / w s p e _ X 1 1 6 7 6 0 R / w s p e _ X 2 1 7 2 0 0 R & g t ; & g t ; / P r o c S e t [ / P D F / I m a g e B ] & g t ; & g t ; / T y p e / P a g e / A n n o t s [ 1 7 6 6 0 R ] & g t ; & g t ; < b r / > e n d o b j < b r / > 8 0 o b j < b r / > & l t ; & l t ; / L e n g t h 1 8 5 / F i l t e r / F l a t e D e c o d e & g t ; & g t ; s t r e a m < b r / > x œ ¥ خ ف < b r / > ‚ 0 à s ¯ â » ‚ m N ™ ش Œ ً ہ 0 ê , ض X 1 آ ں و * ¼ û œ ر i | ? ï ة َ â B I ‚ s ¥ @ و s X ¦ p ھ Z ھ µ = ً ” | َ ت n ; Y أ < b r / > آ ذ G l ّ ° ک ¢ x ¼ d 8 « ¤ < b r / > l = X ه ـ أ c ُ Y ب ر ع ُ آ … ¸ è Z X ف ش ¸ ¼ ں ¬ ‹ ِ آ * S s ، ™ h · i ى F ، p l ٍ ى Z u & l t ; ّ ے ¶ q F 0 C d ئ € ر ر a ْ † ¼ z £ c r < b r / > e n d s t r e a m < b r / > e n d o b j < b r / > 9 0 o b j < b r / > & l t ; & l t ; / S u b t y p e / I m a g e / L e n g t h 7 1 2 3 / F i l t e r / J B I G 2 D e c o d e / N a m e / X / B i t s P e r C o m p o n e n t 1 / C o l o r S p a c e / D e v i c e G r a y / W i d t h 1 8 4 0 / H e i g h t 2 8 4 5 / T y p e / X O b j e c t / D e c o d e [ 0 1 ] & g t ; & g t ; s t r e a m < b r / > ے ے ؛ ؛ ” . ع ! ض ج N - ¥ ث + ! ز 2 ل 3 H ن ً ج ¬ ق R M 8 x ط ٌ q / e ´ ç ه f . ڈ ` ق ط ز E ک S گ ص F ئ 7 é ، : ؤ و ُ n œ — è ƒ € ء ¼ € î چ „ < b r / > ي ¸ ' ` ث ل e f ´ ° è Œ ب j 9 5 X گ × ‡ « ë ! B € v û x – _ $ i e ô غ + ‡ « P ? ´ ‚ • ٹ ، ƒ G × W ص : ڑ ظ T . x 4 î - y h ¼ E P 7 p گ r ـ ¼ ( ء < b r / > C ¸ ! ° ô p < b r / > i < b r / > › ي Q ç [ â 1 ™ { ـ < b r / > V ¯ ف “ ¶ ¬ e ± L ¾ Y ل ؤ j : ‚ + ] V C « پ z ¤ َ س V – c 9 ; N u ¹ ç – k ¥ ہ ً b < b r / > ہ s | ‰ ت î r ç ³ ئ , ص p ' ت ™ x س ¨ ’ ذ د î + ز ہ ب ئ _ ¾ I خ Œ L ئ ، [ ء ƒ $ € A t J ² ) ™ à * ّ ب R L پ E ’ ‡ ½ # Y E j é 1 q m 1 “ ë ˆ O ؟ ½ – ط x L { ٌ â g ¶ „ H ‡ ¾ ُ u \ م j ل † J ِ ح & a m p ; پ ¸ Z آ … ] ر ! ‚ ¢ ' ¨ g Y 3 ص C ھ N ´ ' r ¸ < b r / > ئ k z ½ Z 8 ™ 1 ؤ غ ه ه M 8 ة t µ چ ¨ ن ل [ © - & a m p ; » G ڈ ج ئ ; B ~ ç ¬ ’ ® ¤ ¸ ' 2 , C ط آ ؛ ^ ™ ُ & a m p ; ” ك خ ¢ ف m T 4 ’ ل ) ئ ّ ٍ ز † g „ Q - < b r / > ¤ x ْ S J K 4 B * ~ † U ؟ ô K y [ n ˆ s ر è ² ê § & q u o t ; © ‹ ے 5 R ي Z ’ ¬ ! س ن % £ f خ } I - ! F د R ^ ( ¶ 1 T V ئ ¯ \ s [ ٌ U O ؟ ط X ا ° ٍ t آ ç ¥ د آ ‰ B ¹ R ّ o ½ € ي _ µ j أ a ’ ¦ ؛ ° ک ´ _ F ] ³ س S ٍ « ں C ¯ P ي I 8 n ، $ r b ڑ ¾ N ؟ ً q U @ ° ا ظ ي ` ² c | ¶ ن ڑ d د ° = s … ¶ ' ن ® ! ÷ غ ص و q s L „ P ج • s ï … ؛ A ژ € ب U ل ى ک E < b r / > k # à ’ y ¯ - ï † ; ™ × « p 0 ¨ ں ¦ ج K پ S ء ً أ £ 2 q ث ٹ z 3 x ˆ ؟ ٍ M & a m p ; $ ^ d “ u س y r ت أ N خ . @ ¾ ï N ¶ · ¯ ê z 3 ٍ “ © I a - < b r / > ü y ڈ Œ 7 ت m ›G™c±ااذjëgk6ى»0pm»(mâُچ"W®K¥E;/Iْ¨ô*)?ظZطغُ\¹$P©¼ًٍ°کًگة؟
¶uضéظپُحwcِî©&&=پàجژمحه·ˆV/%(ù¼¤؛ׂàHuآ2F»¸3ّئںذ³L^kےü°دdâJ*³92B²Hپ„;jo»pةgùگµ5ü.زجsµ”`ع5پ=œنbUےgظ{–R غƒ3®ِïBù؟شمعٌنœ\AزuuـîC™·FZGY[2مïôگ¹Uءہj®/Xءغ£VŒھokçx su²ûi¯Vُva«ë^=\RLµظv«mأjُ´Oي×ا‡ )¥،پâحہV|&9O ش¼
&/^چGky;‚ْ}ك³5¤j>">7&ڑ:H^Kٍ´R ô0:tُl`yن\ِsd d·0L?v[1^0I`ه .=î“V¾ôoْ4ک=kچ€'·b2مFلط¦ؤ‘X.قأژ-Zى‘B%™’&غb5\»
ب98çطاْBْ.هل¸ئ·67¸ôپ©P!“G‚ôt%8UQœعµ¦çî•cƒ6f1;g‹س-ڈ±ˆ§>¾Qچ†{p9‰,î»،¶Vx_ب„G‘6Sچ%tٹKê»fٌ=—ع ط÷"،Q—p“bU>ص.8Ye،ai§z؟N%‡³ڑq¨PP|أءىnR}
³t¸jq¶أ|G«Géf0M!³kھ ¼XPlLDے:®F’Pˆ¶:ج«ظن4J6 MG°V^6غ§¼è¬ثغِ%Œ%ئ 8iïك¾*l/PQsaژِہ™L§ںqe*غ؟شƒ؟m_‚لü'شء'»%:v .Weڈgج‡nِہ،fGتژ³I±B-¯ُi/G؟ç·ذ"0+كû\م§2†î!q±جw³~v•S2¼x÷^R¦ô+
جD:5Lï›@QگھôûHG±J”,تy©دL.2pْE;›¾د÷–tŒ›،y÷cٹ¥jèë´D(à&™h²z)vuژـF]گں»ù²]Tُ¶£Fôظ ë-¬چثyœڑم~َھرـàS"?ؤ‡VJœ©mù1Œہحe3ˆˆMبgڑچخقزSے{âخêâx
ه‚{¥›s:g+خvگك}xهگ*ژk7?ک ûردسآO!{ے?b2ِ¹÷ں‚ ^u» دˆû‹إ´%دج¨e89qïƒV„’ضد[مطڑ؟xF’(IZ?Œ!ق-ذ9
;Eé¸ قjûرG•ِنحWإ[è6
"چ
àڈOt?؛mڑ©\r"ـ¹W·kو/êMâ©!èJٌ™è،ڑ{|ƒجْ3ZطçK\Lوôضd*ز÷x°ژ¦%VdQئئ8ctOA›4G,uwu¤ريز.YBv"/-
Подробнее здесь: [url]https://stackoverflow.com/questions/65260677/convert-pdf-jbig2decode-filter-to-image-in-c-sharp[/url]
Мобильная версия