Вверх ↑
Этот топик читают: Гость
Ответов: 99
Рейтинг: 1
#61: 2008-11-14 00:12:36 ЛС | профиль | цитата
nesco, Спасибо, проверил...большой рисунок отцентровался и отпечатался...но увы при работе со сканера картинка так и не вышла на печать..не в ручном сканировании с ни по функции "ксерокопировать"....

будем надеться элементр - принтер доработается...
карма: 0

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#62: 2008-11-14 01:18:25 ЛС | профиль | цитата
NetCom писал(а):
большой рисунок отцентровался и отпечатался...но увы при работе со сканера картинка так и не вышла на печать..не в ручном сканировании с ни по функции "ксерокопировать"....

Но это уже хоть что-то...



------------ Дoбавленo:


NetCom писал(а):
Кстати после замены принципа печати с ричедита на цепочку предлагаемую в начале темы (та что сейчас на схеме) сразу после сканирования если закрывать программу вываливается " Runtime error at 216 0000706A"


tsdima, вот что выдает эту ошибку в секции finalization


    DestroyWindow(hNotifyWnd);



------------ Дoбавленo:


NetCom, вот так еще попробуй. Да и Printer тут не причем, он не печатает размеры больше установленных при текущем DPI.


Add(MainForm,14727994,7,107)
{
Left=20
Top=105
Width=839
Height=599
Caption="Домашний МФУ"
BorderStyle=3
Icon=[ZIP7636000078DAED5A075494D7B61EC092628BB9C6A8B1C4DE1BC634A346A3B124B12431E59A981E634C8C468D351A7B27462902369A202020A0F4DE7B1B06187A1B18CACC304C8101BFB7CFFFFF20A0DE98E49677DF7A67ADED915930E7DBFDECBD8F48642432164D9F2EA27D84C8798C48345624128D1821FCDC4F244AA1CFC6D367F42BA24F44FCE76CED1F23FAFFF57F7319133D4634906814D124A2698209DC8FA6108D24EA4FD4ED3F88F971A2C144938916127D4CB49DE808D11922B307D071A2AD44AB055EC8EA4526FF26DC4C5E4F8A78177B8DE88BE747CFB9B079C5EEC40B3F3856FB9D8C6A8EBD988114976C886FE5A320B214E56955A8C9AF87BABA11CD3A03929393EBB76FDB9E4A7F7B89680FD112A2A7FF853C1811F514CE9841F4CEAC212F9FDBFCEABE749B4FDC1B3DB786E3D6FE18049D4C40A4452AE2EDB290762307398185288A2B872C4B8EFA1225B4F53AB41A5A71E70ED0DA7207E5A5E5BA552B57C5D0F79D225A2CE8E19FBDBA0B76FD3CD1BA95C33FF63E3AD7B6EEEA3BB771EDB300B87D178A9B3B22E1772816A1664988B1494792931899DE79908695A034A912D5B9755055AAA1573771D8DBF0B734B5A05963C0CA15ABA2E9BB770A7ED3ED9F68DF7D986D0FEC39E48B75CF6C8E3C35D9A9C9F2154F5C7CC307F61FFAC1E5AB20DCD81C069FBDD1083C168FF0F3C988BB9C89145709B2FD0A50185D868AF46AD4162AD058A38181F0B275A7F50EA70783DE80A6C666642667A9055B7A976880A0EFBFB27A103DC374FAE1906FBD4F4E706C3A3BC90DE74D6FE0C2C29BB8BCEA161CD7F9C37543083CB747E0F68118049F4E4494551A121CB290EE998BDCE022142754A02ABB068A3215744A3D27F34EB2D71A389D30BBFA61E3E6343AEF00D12CC156FFAC9D3FCA7CF3852716ECD93FD64ACE707334D91D162F7AC276A937ECDE23DBF93C10EE9B42E1BD2B8AC39EEA9A8BE2781964D9F5A82B69E4A8BE548BFA321D478ACA2634D619A06B681164DF82264D33742A3D34753A48330B7403070CBC2EA4DC217F4207ECF77B13CDFC6AD84EDF76DC029D9B7E0356F3BC70E92D5F38ACF54794453A4A1264D0D4EBC91E8096E63B24CF56C2D74A9FB5405D638052D68CFAF266D41637415EA047559E0E9512A26C2D6A8A08B78264AFD0916D69A192A971F2D069299D7F92E815219FFC91F5E898C727CFDB32F2686257EC9CED3CE701EF1FA3210D2923B919D0B6387BA01F0DFA56E81B5BA155B6A0B1D680866A03C9BC1975A54D1CD66AA91EB21C1D2AC45A9465685192AA415162237DAEA1B8AA81B2428D52718561C2B889BE846503D1B3820F3E548C99D2FBB95987C65D2CBB1F76A7778250915C83FB2D26FBF22C3142C325B8EC4AB12734ED1FCABE3C538BD2342D8A931B5198D088FC984694A5ABC9471A383FB7B774AC203CE78578DAFB21ED66E08ED166615D715BBDE0856CCFE276ACCAB2228E1AE5B276D99725C620225586308916DB1CABB1F6E768CA5535FF58F629BCEC0BE21A218D562337BC0155392A2EC755496AF1D2732F8710A61F45FCD5F4F7725ACF2D238F9DEE8A3DFC581AF40DCD1CCEAAAC148AE58974AE0EA937D4083C45713D318B937DB5241BA191127826AB71D8211F9EBE799D645F95538BD2D8181404B923EFE67948AEEF86D8EE538EA46152E445362027B401D20815E4797590896B70FB5A403DE1B2267AEBF772DA82BFAD187566A2B3A6A3CC0B822B3AD9488A93031AE42D84A719597E8D083253A2245E7A5FBBAF2B284549942772DCF622CD723992CFCC448A19D1D91948FB6D06D2CFCD4086F974645ACC80F8CABB9CEC73421A901DA0A2785B8FCA4C39CA526458F2EA329697F7124D1572E87DD79E31E70EB6DBF9DB41505568EEB1F1B28418CA459924A33CE404CBE84E50DA1E739A28E6A82ACA50126E8F34EB0F107F7C16124E9A22E99429C4566320BDF40C0AAE3C8562FB5E28BAFA288AAE88907F5184DC0B26105F980889DB5948825410FB2B91755B89F2D46ACAD93224FAA5E9089E1DD18742FEBF6F3C3D3EC13EA10D7B9BBDB4D97A494C08673B06BDAEB3CF0A31479E1984EC6B9B107B7806628F9A22E5D799905E1D0799477F28FC45A8BF25429DB708720F1164AE22945D13111F22145C1621CF460489D56390D84E47B66F32873DC35B49F2A94149622547DB36ECC816EEB2CF3F28A7FD3AF59CFCF2E25B9DB06745FA23A5B210AEF242FC20894070885727FC55299E483CFB3AA20F4E45D299D9C8B39F8F9A80F9688834852A6C1494C17F8332B03B147EC483AF08B53745A8BE2142E575114A1D45A407410756C483F560E4D82D45A64F39D2BD14E45FF52888AEE2F067874B0D039E1CE046303F13EE03F7E8E0D7C94ECDE509F24EF8E2026E205FAB844F6D09B6E64421A7209BC79DEA8104B3C588FC650AD22D5E4599F7DFD198F42D1A133E813A6E35D4310B898799C4C3B3C4433F28038CA1B84D3CF88850E3493A7013A1BC4D07974807D684DFC218B997C88E5C8E20CDB31E29EEF5C8B859DBAE8303DB0FE70B35C37CA1DEE8B49CDE775574B577662F0A450D644D5ACAEF0A280AE39164BE0A113F4F429AC52254876F8336EB28B419FBA149DB81C6E4EFD110CDB0CF261E5E873A7619FD7F3A94418FB5DB519B0E2A5C48070E2214921F486D45C8B13442B6452FE4DBCF42A6AB0F925DEB91E45C8FBCD0AA761EC68D1A7F9BA07E4F34BA6B3CBDB1FE7A351EB00C3A15A43E8711B6673C12CDE6411EF50B7479B6D0E55E8036E73CD4A97B20F77F1172AF47A0208CCAE0FE68889A83C6C4AF88BF2344BB8987DEED3A907B0A7EE0443A68B3A10B2288CF9B20C786FCDCE955A45C2F45A2531DF1504B7182C7EF62E52627A89644CB88FA76C4EFB67E77F4FDB0AB2BB31173623ED9CA34147B6F82BED019FAA2EB442E50261F81D46E22273B26472653265F85BF0967FFEAD8B7A049DD0A9DE41CD409CBEFFA81970855EEF7DA50B6B93132CF9A900E2623D77913121CEB107BB50E99BED5ED3A58BA607994509B4EEC58239C9F37F627B954D2C9012A93DC11BC6334927F5B0455C605E84B3CD054EA038DD415B9D7DE42CC0123249F3046D66F2690521C2971E071318CCAA05E643BB3C827D64193F10B1A625E223F306A8F456D36C4FEA690E210FB7B898511F75D99E77AA1F8FA6C6438B920E64A2DA26C6BC897651C7E5F7B7F96D32EB2DA4FA85F79FC73C70CBBB27A8E8D24880A265A6297ED08FE6934A4D73FE364DD54EA8DA6F240345586A121D70D617BFB2062AF08F1878D9176DA84F33F160FCB9DC94749BE0A3F23A84287901F2C269F580055C840C2DF8DB3A13A1F3E96B6C7A10E3E9075CE0469674C907D61108ADD5E45FC1531226D6AC88EEEEAE0EB8F36B01A61BF50C3F6E8C883F9BCB1E7834EFD1C117EE0454355F81EB217473495DC445345109AAB6360A84D82A12E15BA8A089404FC880C9B99483DD387D33BB381623B92AD27C59CE0D1847B3EE15FC2C7D3D06728963EC2DB505B1C127C808BA30C3FC55131E14F3733E1F45AE03001F9D7BF40E4851A845BD4502DC4EB40C869F6441F110DEA184FCFCD1DF318F1F079AAED97393AE92592BD2B9ACAFCD15C15CDE1362873D0D2900F832A0F0645160C3509A493508E477D81237439965C4CD2A4FDC4F9AF3A7605F9F20BE40F23C8A61EE7E3902FAF231647B95C66D7D98739FC278D891E41993BC52387B3083B2F47C40579BB0E0E6E3F2215FA2F2F09B556A765316FECFE3CCF7D85FA124F927D08E14C24EC12B43496A2555B8D564D25F151403CA5136F51C4E36DCECE7479D6D08A4F4293BE8B72C237940FDEE662119FCFFA40E9DFC187DBF200E12F10F06713FE0CC29F42F8138E906F590E82CCFB05C45C8847F0AF72AA493BE5340F82FA9590D33A2D410FBFE4DD3C59D4240B23BB49E1E4DEAA93E38E41833BCD4AE2A58C742046B33C967C2380D3158BABDAECD3847F0F97D3D4F1EF921DBD0255F818C2DF97F0F33EDC2906D9F131A81DFFAF77F1C71C3046D1B58928F6F810A1678B106C5685A2585E07B6A7AF5408F78A49F7BB53903FFC8DF94351E8C50A663B4CDEADBA1ADC69D111FE06B468CA097F36E18FE3F1173F08FFDCBF843FF6704FD2C16C881D8FC0FF7815C55459BB1D093979FA83EEA5CCA72FAF9C6D5393754B6150E612E60AB4EA6B393DB4A88B60A8CF20BF8E26FBF1E3F2822ECF86ECE714E1DF4DF83790FDBC23D8CFE8BBF6F37BF8CD3AE38FA438977AF629D4F8BF84E8F3C1B875B88A7CF9E1F0DFE5E1799B9AEC40854125E570B7341472FEC0E211B32F9617F4854E9493ADC87F8FF1F789C4AF09FF2AC2FF127F17A29CA0E862FF0FF2DFAEF84377128F8EE351EDB718FE470B107A4EF6D0F83BF120F65718EA3349EEE91C76CE7739DB71873EFF2AB4946BB59987B8BCDB98F019C59F37287E3E47F17318E17FB43D07DF133F857B68C7F8C9724BCC2FC65C9E61F843777687DCEF05E4BB6E86F73E19DD511F1E7F475B92677829389B918573D89B4ABC04D95BF3B69FF133DDE53691EDFF9DCB5FAA88A994BF06F177E9B63B9047E77B74D7FCD5863F9AE1DF43D8778810B8D504F1C70643113A07F196D7E0774CC6F01F15FADEA287E7E1399BEA6427455329D50BC51E84FD1A74D28B24FBDF48F687C976B60BB6F3B6E0BBE3B83B1DBB4777BD3FB4DF41D9FDC192BF3FB07C9E74DC18718708FF7E238413FE1086FF4713F86DEA43F7BBE9A80D5A8C8023190CFF263676FA230D228E8715B36CAAE3AD14FA02073EE630BB6176CFE20EDDA31B133E12EECFB3C8768677CA5DEC8EC7F92EDD354ABAD4002C8FA79E3246E2318A3B078D11B58FF0EF16D15D4684802DDDE1F77D5FF8FF300475412FC1F5D0A2C287A9ED1FC8C35B336DAA228F2BB592B302F69FA149D942B2FF82AB6378D94F20DB798A6CA75BE71AA6EDFEDCC177B3CD3BC4CEA33CFEC89F8D10B68BF06F67F87BE2F6F74FC0E79B2148383E19DFAE1CE226D8FE9FEA55331E2EBE35DD5616F29392C99DC74E7786F83564F78BF81A8C937DAFF6B8D9663BF7DCDDBAFA6E97D813B4CD08FE9B1FC5ADEF9E84CFFAA1B8B1610CBB03AD13EE3F7F7A517E7BD9F68D294E15FE5F2839B9C7BFC7D55E0D91CF0B319F6AE00093BBF7B6B67B439BED5CBE6B3BF7D8FE2F461D7CD798ECE671DCDA3800DEEB8763EFE241A1C2FDF391BF3A20E07998E454EEFBA692C31EF53CE7B3DC9D39B067A71E449BEC3BC5CD0EB6D36EFBC7A722EAD014CEF6437E62BEDB8DF35DDF6F07C27AD5889249FD1F5F24D4607F7546709787E5E39DCA3C4D95AAF0B17CBCA4BA97DD17EEA9DD9D3BD72D5CDC34EF8F74DBB548B96C8104BB34C45CAE4584550D424F5C25DFED4BB6DF030E6B07541D9B37FCF69AD14FB1795BAF3FD0D7FD033C8C712A751BA4EC845DC8B7D5EE42CC14627E81F32BC8F33A06C9AD2864DD5222CD438124977AC4D9D571355798790D9C7FBC5E65B9E6A364B385CF78FE3473D8E72F0FEA3BE85F396BE5785836CAA9C4B9BBB21DBBD07390790D4765F0469447BB70BD5BD6B7657D4371808AEB59A5B8D523816AF6DB27229476DF9C90982D59ECC5306F9E3E74D67B639E7AE2DF355BE57918E954ECD05DC9B0B35C5B76EB7DC8A5B55CFFB92C5DCBF59DA5516A48821B10611BABB8B1C72AFFEA175B124EBFF69CCB2FB39FDDB27DE6B079425D622CFA0F2CC6C3C565236D732EF494F375D66310DBADD247DBFBC8FCCD6CA5CE5BB62658AC7EFDF6F19746591E7971E4CE7DB347ACDA34ED99F1423D6B24FA5FB0847AFAC46F73C75C75FBE4E9409B95432C49B65F13ADDC693A7CC6076307FE3BE7EDFFBFFE858BEF5875DCF78BF6B1BD45241ACE7625250BB6EF1776D6C8A67F5A9801D0AE17F66266BCB48775D8D92FEF17766EEDEBB2CF13F6E15DF6BE5DF69E5D76932EBB91708E48389796B2CBAE17F61661BFD3C67FDB2E7C01842F40B1B00B5F003D7F0E930BB7DF1176F038C00988ED611C5FA02F30E2E4A9E4E506BD516739F3FB78E1123DBFE33BAD7EFFFD763569C4D447A78C9AF6B769E3660E9D31D174F8CC29B346CC9C623A62FAE41923A64E9A366CEAE4A94F7EBFE1FBEEFFACF3362EFCC9E49DE7D7B2FEFEE85E8FF45E3C71D8949D2F4E7AC57AE1738B3D17BFBCC467D982377CDE5CF296CFAA15AB7D962E5DEA3E78F0E0C3F4BB6F8F183E62F0DEDDFBFE745EDEF5FA31E34513DEE8F54CFFE19306F61ABCEE9D991FBBEF59793CCB61DB4D55C0A918037B0F91E52BE5DE42C8A575DC3B880695DA101C142C5BF3EE9A20F65E8061F8A3E76E9AB3C778CDCC75BDFB76EBBF6042AF1907B7CE389A6BB3C2D3E0F275103CB74520F0783CA2AC5291EA26E1DE6254645473EF309AF506EEFD484B732BF7FE62F5CAB703D83BAAEFBFD9DCE361CF3EB4EC9CF1D07E23868DEF356DC377230E649E9CE2A8B35E741376EFDF86DBC61078EF8942885922622F6520E3661EF2A34A519D530BB5BC11AD2DAD68A5F3F9B72B4DF0F5B8257BFAE941A7A64D9E36F4F8FE13BF9BFFE68E7EEDB1A77A0C7EF5CB613BC24E4FB8D6CC667FE6B33D7069852FDC368420FC1CE3390F2589ECCD950A8A0AFE0D475D29233D94B22634D63643ABE4DF6ED4572A5BB76EDAC6DE62AD79E585397DFFD1D92B67BEDF8D64BDEA87670F27B5CFAAA7B8C16EB53F529C72519959CB7D27F71643D7CABD15697B0B505BD20479BE1E95122DCAB3B4A8106B5053A84143552332E3B235FD9FE87F5A78B377DF757C9DB9C9CA316B179D9CE0D8C0BF6771C3D5657E48BF960F4D9D9A74A921D9B6905CF5289516C323B810975DD2A0ACD4A1BEBC89CEE2DF20B0197E691A3FBFCF8F51A33C837F777060C7A1AC1EDD7B7C3F65FCA43EF73BFFE8FBE7C76C1D7922B88DEF9003C9A8CAAA476D41012AC555C8F6AB46495229B40A05921373601F5E87D3F61292BD967B4720CB96A1242E11F9811EC8BD6985DC5BEEC88BAC435E840A95F43DF1FE498DD3264D73EEDBBBCFB4AFFFFEC53D778BF5C3F7ECFB75A26BCBD5E57E90DC2C699FB5E48745A12A478134AF7A14C556C1D0748774A043AD548CB2182F485C7723C37A3932CE4D44A6C558882D47128D80F8C254483CEDB9D9736E98827BA36775C2B68CB9D62BB35F1CD2F5FC63E3ED12ADE778A332AD96B361554529EA8BF2A0AEAE261DABD020D772FE54230E43EE8DBD48B55A810CCB1928721C8472D7DEA8747D0415CEDDA9FEE1E725743F44F6A53910DF2E46A6AF1205D1D5A48F92D659D39E636F88161DDEB2B7930C6C5F736E2C13E6AC45E264C4D494E270411272F332C98FEA204B7647FAC50F9161351F45AE4BA1087B15AA882954073FC9CDC5EA84F91DAB63D8EC8BEBFB58F582C4F15BA47B16531D508BC218191CCE5FAB7CF289274F0C1D34E4991F3ED9D0EE8F81FB23B52DC2FB33556D354A1BEA90525B4177F2DBC8B45F8F0C9B3751E1F70D54093FA23169233F0F8D9ACBF57194C14FA0FE365F8FB0FE07ABA3F22FF1BD831CDB09C8BA7E19C9AE7590045673FDF9554BDF8E606F223F58BEAAFD0D529C756055C7199B465E80BC9B07906AB91CB2F07DD0E6DA4091B807557EAF41E6D18FCEEB0655D8586E96A0CD3A40189EE26A22560FB13A94F5BE58FD2F367F047957A620D53909098EB52888AA449C4F92A65F9F7EA784B7A5DCF2DBBFC3AB59A7E586F4EAAA3C245BAD419ECB1768C8BE0A6D811B0A3DDE4386F9206E16C77A3BDC2C2CB037D431CBB8DE962A622257CBB35A98D5F145767CFF447CDE08628B7EC871FE01F17605544B56A338BE129FBCF7197B93F8F1F2790BB9198BE3DA25A63EBBBEB95614E5AE4A3AF7C69D9AD8E3D0B3F9566518B4A58148B39E8BA4334F23DDAC3B72AD999E8D5077EB313A7706E9613ED70764B3394E076E7C0F84F510B2CD8DB8DE8DC46618B21C8F52FD2A8724408648CF38F59409539D860F1E3C75D7971BBAA5B8589BD87DB060BCC7C6A5F6E5C13F6BF445EEDC7CA7B936859B25E864B150645D414DEC3ED4C56C8632E63334C4AF853AEE5D3AFF15284306F276E8CDF7F04A1CF9FE1DEB3D72BDAFD33D21B53745BC6D04622E57A330AEECCE81ED877389F54F870F1ADC3EAF8C3CBB63A8F7E6376D55396EBAE6EA5818D86C462BE7E6030C079387BEF806B439E6D064EC873A817044BF06259BE30574E77B29EEBC0D165EE27B1099BFF2BD9FE453BD5070FD7D449AA721DD4B0629F9E3E471939DE8D897DBCECF743965E4F0C1BCB1A147D74734964434B5A84BD0DADCC0CD260CCA3C34554582CDBEB43996DCFC569DF8391A6216D1F943F9F37D781BE4CEBF2C9C7F963F9FF5FDB26D283E391C44B8059D1F5E89233B8F67D0B16FDEF36EE1A3574D438F7D775357233630DED97CCD509FC5CD04594F9ECDF73519FB88FF4F395F54860C8122A05BA7F3591C9274E09F9D1FFD4B37E43B8C439CA50762AF56C0E2E805A683155DCFCF74396EE2F4D102D3C48B071375D56906361B6896C743CFE679854ED0669B4193B60B6AB201160794214F77D6BF83A07F0B5EFF49AC7775C098EB5B451F781C256CEE7526116776DDFFFCB675EDE385A6A14737DCD494041AF46DB3208A059ACCC3684CD98C86D85550459A4219D4EFAEFDBBF231B0A3FDB3DE199BCBB39E6BD03663A4FEF62CA42E1BB1FB43F32C168F1F74BEE4C669936B1F2F308DB7D892D898EB68E0E7683CEF8D895F72BA57858FA758F068BBFF575CE7DF4FB0182C3E6F8CB433FCCC86F5DC4377F13DC7A0AD0350E43C0BDBDE7FD3FF4173BE4E72583BC73478FF1AEF86B423064DFADEF6192AC77BC82092BD11D78BAB16665FCCF6589C60BD4FD63B8C3BCCF7CC59BF3FE0C7EEF0DD3800413F8D699D36AAD7A60D4BC6F6FDBDF3C54E3F9A38AD7D717ECCA9D569AAB86F0CEAB8356477948342474119F8F8BDF1FF221FFF99EDB1BE71EC412344FECCF7EBFD37F784EF8681B0FE6028ABC2A6AD5F34FCA1EFE74E1FCC5814B8F3854045D8CB066EFE11D487E3BDCDEE59EC67B197BDDFCAB6E88EB473639174763EA2CF7C87F083AF93EEBBC16763AF26EBB70767CE1DD6E7C3F75EE8FF87DE2267DA2EEDE1F4C194455187C6A4D5F93F6950F81BB7EB9DF1CEF53F1D8620F7FA7A885DAD917A2D0A09F60588B4AE81EFC1E0C6AB6B4D25A7173F6DFFD5ACA7E76C5D32E8F13F5B9738BE376E91FF960181355E46064EEEBEB35019790CA509995CFF4F1C50D71AE798A309340BAEBEBECD2AF5C0D2B7CDF7CC1FFFCEDE05CF0E3EBF76EC5FAECBD2CD27F6705C337651F8EE2712CB5D8C9A8B3D5E6BCDF2F16E88B8E859E6B5EF44E6954F3FF7FA6DD59B27CC56BDB8DAEDBBD953CCD74DED7B69C3F47F7AFFCB65EDB8C9CE6BC77FE5FBC3C8AD573F1AB7E2C29A09538FAE18D73FD17CA1D17F533DCD3F6A3481D09A616D897DE41CF358B7613FDF49192E744CFA0A9D12930ED4CE6B98404A815A04421B858928088A4CB8B68552340F2D3DB9A3FF07A6D225BD]
Position=1
Point(onClose)
link(onCreate,11378072:doEnum,[(75,127)(75,43)])
link(onClose,7552381:doFileExists,[(72,134)(72,668)])
}
Add(ImageLoader,2955374,252,205)
{
DrawSource=2
link(onLoad,2955374:doDraw,[(295,211)(295,257)(240,257)(240,218)])
link(onDraw,8550930:doEvent1,[(468,218)(468,92)])
}
Add(StyleXP,12749349,7,58)
{
}
Add(Button,11254953,98,121)
{
Left=5
Top=415
Width=135
Height=60
Font=[Arial,8,0,0,204]
Hint="Шаг 1.Cканировать изображение. Качество картинки = время ожидания."
Caption="сканировать"
link(onClick,10831575:doScan,[])
}
Add(Button,8884848,98,268)
{
Left=225
Top=415
Width=140
Height=25
Font=[Arial,8,0,0,204]
Hint="Шаг 3. Печатать отсканированное изображение"
Caption="отпечатать"
link(onClick,5452853:doEvent1,[])
}
Add(TWAIN,10831575,210,114)
{
link(onScan,8550930:doEvent2,[(446,120)(446,99)])
}
Add(Button,12602092,98,331)
{
Left=5
Top=505
Width=360
Height=55
Font=[Arial,8,0,0,204]
Hint="Производит автоматическое сканирование и печать документа"
Caption="ксерокопировать документ"
link(onClick,16595195:doScan,[])
}
Add(TWAIN,16595195,147,324)
{
ShowUI=1
link(onScan,8610803:doEvent1,[])
}
Add(Hub,5452853,322,268)
{
InCount=2
OutCount=1
link(onEvent1,14309344:doPrint,[])
}
Add(Hub,8610803,266,324)
{
link(onEvent1,8550930:doEvent3,[(474,330)(474,106)])
link(onEvent2,5452853:doEvent2,[(310,337)(310,281)])
}
Add(SDialog,400248,280,429)
{
Filter="jpg"
Title="Сохранить изображение"
FileName=""
link(onExecute,7250159:doStrCat,[(334,435)(334,414)])
}
Add(Button,1337760,98,429)
{
Left=225
Top=445
Width=140
Height=25
Font=[Arial,8,0,0,204]
Hint="Шаг 3. Сохранить в фаил отсканированное изображение"
Caption="в фаил"
link(onClick,400248:doExecute,[])
}
Add(Button,6737124,105,205)
{
Left=5
Top=480
Width=135
Hint="Шаг 1. Открыть картинку"
Caption="Открыть"
link(onClick,13703943:doExecute,[])
}
Add(Version,15168794,7,16)
{
Version="1"
Description="www.luftace.narod.ru"
E-mail="www.luftace.narod.ru"
}
Add(PictureStream,11121735,588,401)
{
Quality=0
Point(Quality)
link(Bitmap,11740140:Var2,[(601,273)(657,273)])
link(Quality,10675324:Text,[(608,382)(622,382)])
}
Add(Button,5960373,98,548)
{
Left=225
Top=475
Width=140
Height=25
Font=[Arial,8,0,0,204]
Hint="Шаг 3. Отправить e-mail c отсканированным изображением"
Caption="на e-mail"
link(onClick,14212387:doEvent1,[])
}
Add(EnumProcess,11378072,112,37)
{
link(onProcess,7293513:doPart,[])
link(ID,11378072:CurrentID,[(118,25)(106,25)(106,81)(118,81)])
}
Add(If_else,9148122,329,37)
{
Type=2
Op2=Integer(1)
link(onTrue,11378072:doKill,[(375,43)(375,101)(100,101)(100,57)])
link(Op1,3711754:Count,[(335,25)(300,25)(300,81)(265,81)])
}
Add(Counter,3711754,259,37)
{
link(onNext,9148122:doCompare,[])
}
Add(If_else,7296773,210,44)
{
Op2=String(Домашний МФУ.exe)
link(onTrue,3711754:doNext,[(253,50)(253,47)])
}
Add(FilePart,7293513,168,37)
{
NameWOExt=1
link(onName,7296773:doCompare,[(205,50)(205,51)])
}
Add(Edit,10675324,616,331)
{
Left=165
Top=450
Width=35
Font=[Arial,8,0,0,204]
Ctl3D=1
Text="75"
Alignment=2
ReadOnly=0
}
Add(ODialog,13703943,175,205)
{
Filter="jpg / bmp"
FileName=""
link(onExecute,2955374:doLoad,[])
}
Add(TrackBar,11665095,539,331)
{
Left=150
Top=415
Width=65
Hint="Шаг 2. Регулировка качества сохраняемого/отправляемого изображения"
Max=100
TickCount=5
Position=75
TickMarks=1
ThumbLength=10
link(onPosition,10675324:doText,[])
}
Add(Case,70443,147,639)
{
Value=Integer(1)
link(onTrue,2286603:doDelete,[(187,652)(187,654)])
}
Add(StrCat,7250159,357,408)
{
link(onStrCat,15368151:doEvent1,[])
link(Str2,3898701:Value,[(370,400)(377,400)])
}
Add(Memory,3898701,371,359)
{
Default=String(.jpg)
}
Add(FileTools,2286603,196,632)
{
DelToRecycle=1
link(FileName,5268257:Var3,[(202,625)])
}
Add(Hub,15368151,525,408)
{
InCount=2
link(onEvent1,11121735:doSave,[])
}
Add(Hub,14212387,280,548)
{
OutCount=3
link(onEvent1,16119271:doCurrentDir,[(320,554)(320,491)])
link(onEvent2,6036017:doStrCat,[(338,561)(338,540)])
}
Add(Memory,6830394,371,464)
{
Default=String(scanirovannaya.jpg)
}
Add(Hub,6957745,455,415)
{
link(onEvent1,15368151:doEvent2,[])
}
Add(GetDataEx,5268257,98,618)
{
link(Data,8164012:Var2,[(111,608)(364,608)])
}
Add(FileTools,7552381,105,639)
{
DelToRecycle=1
link(onEnd,70443:doCase,[(142,645)(142,643)])
link(FileName,5268257:Var2,[])
}
Add(Printer,14309344,700,268)
{
Point(doSettings)
Point(CurDPIX)
Point(CurDPIY)
link(onPrint,12127788:doResize,[])
}
Add(Img_Bmp,4383238,840,268)
{
X=1
DrawSource=2
Point(X)
Point(Y)
link(Bitmap,14309344:Context,[(846,256)(734,256)(734,312)(706,312)])
link(Y,2636911:reCalc,[(867,252)(881,252)])
}
Add(Image,4902926,735,86)
{
Top=-5
Width=370
Height=412
link(Bitmap,11740140:Var1,[(741,74)(640,74)(640,142)])
}
Add(Button,5229203,630,282)
{
Left=335
Top=417
Width=24
Caption="[ x ]"
link(onClick,14309344:doSettings,[(681,288)(681,281)])
}
Add(Hub,8550930,595,86)
{
InCount=3
OutCount=3
link(onEvent1,13694192:doLoad,[])
link(onEvent2,4902926:doClear,[])
link(onEvent3,4902926:doLoad,[(711,106)(711,92)])
}
Add(Dir,16119271,329,478)
{
Point(MyDocumentDir)
}
Add(StrCat,6036017,364,534)
{
link(onStrCat,6957745:doEvent1,[(425,540)(425,424)])
link(Str1,16119271:MyDocumentDir,[(370,522)(363,522)])
link(Str2,6830394:Value,[])
}
Add(GetDataEx,8164012,357,583)
{
link(Data,6036017:Result,[])
}
Add(Bitmap,13694192,651,86)
{
Point(Width)
Point(Height)
}
Add(Screen,6461272,798,86)
{
Point(CurDPIX)
Point(CurDPIY)
}
Add(MathParse,347937,749,205)
{
MathStr="((21 / 2.54) * %1) / (%1 / %2) - 1"
ResultType=0
Point(reCalc)
link(X1,7679868:Var2,[])
link(X2,1403054:Var1,[(762,144)])
}
Add(MathParse,9429064,819,205)
{
DataCount=4
MathStr="((21 / 2.54) * %1) / (%1 / %2) * (%4 / %3) - 1"
ResultType=0
Point(reCalc)
link(X1,16044466:Var2,[])
link(X2,2781845:Var2,[])
link(X3,817129:Var2,[])
link(X4,12158718:Var2,[])
}
Add(Resize,12127788,784,268)
{
link(onResult,4383238:doDraw,[])
link(Bitmap,11740140:Var3,[(790,142)])
link(Width,347937:reCalc,[(797,252)(762,252)])
link(Height,9429064:reCalc,[(804,252)(832,252)])
}
Add(GetDataEx,7679868,742,142)
{
Angle=3
link(Data,14309344:CurDPIX,[(732,151)(732,312)(713,312)])
}
Add(MathParse,2636911,868,205)
{
DataCount=6
MathStr="((((29.7 / 2.54) * %5) / (%5 / %6)) - (((21 / 2.54) * %1) / (%1 / %2) * (%4 / %3))) / 2 + 1"
ResultType=0
Point(reCalc)
link(X1,16044466:Var3,[(874,151)])
link(X2,2781845:Var3,[(881,165)])
link(X3,817129:Var3,[(888,179)])
link(X4,12158718:Var3,[(895,158)])
link(X5,14309344:CurDPIY,[(902,193)(811,193)(811,312)(720,312)])
link(X6,1403054:Var3,[(909,144)])
}
Add(GetDataEx,16044466,812,142)
{
Angle=3
link(Data,7679868:Var3,[])
}
Add(GetDataEx,2781845,819,156)
{
link(Data,6461272:CurDPIY,[])
}
Add(GetDataEx,817129,826,170)
{
Angle=3
link(Data,13694192:Width,[(664,179)])
}
Add(GetDataEx,12158718,833,149)
{
Angle=3
link(Data,13694192:Height,[(671,158)])
}
Add(GetDataEx,1403054,812,135)
{
link(Data,6461272:CurDPIX,[])
}
Add(GetDataEx,11740140,644,133)
{
link(Data,13694192:Bitmap,[])
}


карма: 22

0
Ответов: 16884
Рейтинг: 1239
#63: 2008-11-14 12:36:06 ЛС | профиль | цитата
Что такое "БОЛЬШОЙ РИСУНОК"
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26113
Рейтинг: 2126
#64: 2008-11-14 13:18:35 ЛС | профиль | цитата
Tad писал(а):
Что такое "БОЛЬШОЙ РИСУНОК"

Для принтера большим рисунком считается рисунок, размеры которого удовлетворяет условию

размер картинки (W или H в пикселях) > (размер бумаги (H или W в см) / 2.54) * DPI экрана
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#65: 2008-11-14 13:25:35 ЛС | профиль | цитата
Если "Большой рисунок", то должен быть вопрос: Печатать с уменьшением в зависимости от возможностей принтера или печатать рисунок по частям ?


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26113
Рейтинг: 2126
#66: 2008-11-14 13:27:07 ЛС | профиль | цитата
Tad писал(а):
Печатать с уменьшением в зависимости от возможностей принтера или печатать рисунок по частям ?

Это все вешаем на пользователя
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#67: 2008-11-14 13:41:50 ЛС | профиль | цитата
nesco писал(а):
Это все вешаем на пользователя
Что-то я в приведенной схеме Сканер-Принтер не увидел опроса пользователя

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 99
Рейтинг: 1
#68: 2008-11-14 14:23:05 ЛС | профиль | цитата
NetCom, вот так еще попробуй
__________________________

Увы тоже самое..сканирование полноразмерного листа как аналогично и ксерокопирование - пустой лист на выходе и после закрытия рантаймеррор..

выставлено в настройках сканера - А4 210х297 разрешение 100дпи...
получаем:

Картинку
http://keep4u.ru/imgs/b/081114/54/54def343e5d4882865.jpg

Смотрим фаотожабой ее настройки
http://keep4u.ru/imgs/b/081114/f8/f8da5db4d2d8bd6c4a.jpg

ведь 100 стоит принудительно...

по печати ....попробовал сменить на 100 дпи и отпечатать - тоже пустой лист... вообщем надо находить методы универсального изменения картинки чтобы хотябы условие ксерокопирования совподало с реальными документами на входе обработки и выходе... =((
карма: 0

0
Ответов: 2125
Рейтинг: 159
#69: 2008-11-14 14:31:58 ЛС | профиль | цитата
nesco писал(а):
вот что выдает эту ошибку в секции finalization

Я как-то не сразу обратил внимание, что он использовал несколько компонент TWAIN. Я когда писал этот компонент (хотелось побыстрее дать пользователям сканеров такую возможность) на скорую руку сделал глобальное окно для нотификации. Надо будет подумать, как сделать так, чтобы можно было несколько компонент ставить. Вся проблема в том, что в интерфейсе TWAIN имеется глобальный callback, который выдаёт картинки. Там не предполагается сканирование одновременно с двух сканеров.
------------ Дoбавленo:

Только я не понял, finalization разве может дважды вызываться?
------------ Дoбавленo:

NetCom писал(а):
пустой лист на выходе и после закрытия рантаймеррор

Полагаю, глобальная переменная с идентификатором окна была кем-то затёрта...
карма: 1

1
Голосовали:Konst
Разработчик
Ответов: 26113
Рейтинг: 2126
#70: 2008-11-14 14:34:27 ЛС | профиль | цитата
tsdima, надо бы иметь воззможность получать от сканера текущие настройки DPI для преобразования в реальные размеры пикселей, а то у нас все приводится к экранным 96 DPI. Вот по-этому, фигня и творится с получением картинки реального размера
------------ Дoбавленo:

tsdima писал(а):
Только я не понял, finalization разве может дважды вызываться?


Может вот этот вызов еще не завершен


CallDSM(nil, DG_CONTROL, DAT_PARENT, MSG_CLOSEDSM, @hNotifyWnd);

А ему уже дают


DestroyWindow(hNotifyWnd)
карма: 22

1
Голосовали:Konst
Ответов: 2125
Рейтинг: 159
#71: 2008-11-14 14:42:55 ЛС | профиль | цитата
Кому ему? Если ошибка на DestroyWindow(hNotifyWnd), то hNotifyWnd содержит уже неправильное значение. Можно сделать выдачу значения hNotifyWnd в лог, чтобы в этом убедиться.
Вряд-ли закрытие DSM само уничтожает окно.
------------ Дoбавленo:

NetCom, а есть ошибка в моём примере? Там, где TWAIN только один раз используется.
карма: 1

1
Голосовали:Konst
Разработчик
Ответов: 26113
Рейтинг: 2126
#72: 2008-11-14 14:48:23 ЛС | профиль | цитата
tsdima, если CallDSM используется в асинхронном режиме, то уничтожив следом за ним hNotifyWnd, асинхронный вызов попадет уже на удаленное окно, или CallDSM, все же, работает в синхронном режиме
карма: 22

1
Голосовали:Konst
Ответов: 99
Рейтинг: 1
#73: 2008-11-14 15:49:09 ЛС | профиль | цитата
tsdima, в твоем нет ошибки этой.
------------ Дoбавленo:

пипец... берем картинку ту что я размещал сдесь (со скриншотом фотожопа 1280х1024) , открываем и печатаем ...и отпечатывается ее левая сторона в точном размере...просто половинка изображения - ее левая часть...

значит 1280х1024 без проблем распечатывается из формата JPG.... с 96дпи

нихрена непонимаю логики...

при этом фотошоп выдает 72 по картинке а свойства файла (win 96дпи)

....надо покурить..чего-то засиделся видимо..
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#74: 2008-11-14 17:01:01 ЛС | профиль | цитата
nesco писал(а):
размер картинки (W или H в пикселях) > (размер бумаги (H или W в см) / 2.54) * DPI экрана
то что меньше на больше исправил - это правильно, а при чем здесь DPI экрана, если речь идет о программе Сканер+Принтер?
У меня в одном флаконе Факс+Сканер+Принтер и работает при выключеном компе (без экрана).
Не догоняю.
NetCom писал(а):
....надо покурить..чего-то засиделся видимо..

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 2125
Рейтинг: 159
#75: 2008-11-14 17:18:21 ЛС | профиль | цитата
Tad, это фича такая в винде
Любая картинка в памяти должна иметь параметры, идентичные параметрам дисплея (количество цветов, например, или тот-же dpi), чтобы потом отрисовка картинки на экране сводилась к простому копированию памяти. Это оптимизация такая.
карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)