Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Число страниц (.doc, .xls, .txt)


Автор: psn 1.9.2008, 10:59
У меня следующий вопрос, может кто подскажет, как получить количество страниц документа Word,  Excel и как рассчитать количество страниц файла .txt?

Автор: marcusmae 2.9.2008, 00:12
http://www.codeproject.com/KB/cs/mswordcount.aspx

Код

                Word.Document aDoc = WordApp.Documents.Open(ref fileName, 
                                        ref missing,ref readOnly, ref missing,
                                        ref missing, ref missing, ref missing,
                                        ref missing, ref missing, ref missing,
                                         ref missing, ref isVisible);

                Word.WdStatistic stat = Word.WdStatistic.wdStatisticPages ; 
                int num =  aDoc.ComputeStatistics(stat,ref missing); 
                System.Console.WriteLine ("The number of pages in doc is {0}", 
                                          num); 
                System.Console.ReadLine();


Цитата(psn @  1.9.2008,  10:59 Найти цитируемый пост)
рассчитать количество страниц файла .txt


У него нет страниц.

Автор: psn 2.9.2008, 13:10
Спасибо. Для ворда как раз написал, сейчас для экселя делаю. Да у .txt нет страниц, но мне надо определить, сколько их будет при печати – рассчитать, зная размер бумаги и все такое. В этом и проблема, что надо знать заранее.

Автор: marcusmae 2.9.2008, 16:20
Ну если для печати, то количество страниц в документе ничего не значит, ведь печатать можно хоть 9 страниц на листе или, наоборот, в режиме, плаката, 1/9 или что-угодно. Формулируйте вопрос точнее.

Автор: psn 3.9.2008, 09:09
Принтер будет печатать с определенными настройками, которые не будут изменяться (т.е. постоянны: размер бумаги – А4 и т.д.). Параметры печати не изменяются, изменяется содержимое .txt файла.

С Exсel тоже возникли проблемы, не могу получить число страниц, найти свойство.  

Автор: marcusmae 3.9.2008, 16:50
psn, боюсь, Вы неверно избрали точку приложения усилий. Даже если настройки неизменны, всё-равно не зная особенностей принтера, количество страниц для текста из txt посчитать не удастся. Ну что тут объяснять - вы, может, собираетесь вручную измерять размер печатных шрифтов? Мне кажется, нужно абстрагироваться от приложений и изучить, каким образом вы можете получить эту инфу непосредственно от принтеров. Скажем, вот вы же видите статус принтера при печати? = Он там как раз показывает, сколько у него печатных страниц.

Автор: psn 4.9.2008, 13:56
я думал об этом. Но тогда надо как то отменять печать, до того как он напечатает первую страницу. Есть идея воспользоваться печатью в файл и уже оттуда получать страницы,  например у файла формата .mdi. 

Автор: marcusmae 4.9.2008, 20:38
ещё есть идея использовать виртуальный принтер

Автор: psn 5.9.2008, 13:19
я про него и говорил smile на выходных попробую сделать.

Программистам нашим моя идея не понравилась, говорят твое приложение должно все делать само, а не использовать сторонние приложения, говорят так криво, но мне пока надо быстрее. 

Автор: psn 12.9.2008, 12:59
Вопрос решен

Автор: RedButterfly 3.10.2008, 06:53
а покажите важе решение smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)