<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD: Просмотр текста с альбомной ориентацией страниц]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12421&amp;type=atom" />
	<updated>2017-02-13T10:06:14Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=12421</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD: Просмотр текста с альбомной ориентацией страниц]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=112318#p112318" />
			<content type="html"><![CDATA[<p>Из банка приходит ежедневно какое-то число широких и длинных файлов. Таблицы отформатированы&nbsp; псевдографикой.<br />Файлы не грузятся в систему. Они нужны для получения дополнительной информации.</p><p>Когда надо распечатать часть текста возникает необходимость в минимальном форматировании текста:<br />альбомная ориентация листа (блок с классом WordSection1) ,<br />Моноширинный шрифт (тег pre) ,<br />&gt;132 знака в строке (8.0 pt)</p><p>Если кодировка будет отличная от cp1251 (charset=windows-1251&quot;) будем&nbsp; менять charset.<br />Для DOS&nbsp; надо использовать charset=cp866.</p><p>CMD размещен в Папке SendTO. Исполнитель выделяет нужные файлы -&gt; Отправить -&gt;CMD</p>]]></content>
			<author>
				<name><![CDATA[badik]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=21834</uri>
			</author>
			<updated>2017-02-13T10:06:14Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=112318#p112318</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD: Просмотр текста с альбомной ориентацией страниц]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=112314#p112314" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>badik пишет:</cite><blockquote><p>можно быстро подготовить текстовый файл для просмотра в MS WORD</p></blockquote></div><p>Забавный хак. Можно лишь добавить проверку перед удалением файла - &quot;if exist %1.doc del %1.doc&quot;.<br />Ну и подобный трюк пройдёт только с Microsoft Word, Libre/OpenOffice Writer (и, наверное, многие другие редакторы) такие документы не поймёт, что стоит учитывать при обмене такими документами с другими людьми (и вообще, лучше так не делать <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /> ).<br />Судя по личному опыту, такие документы спокойно перевариваются 2003-2013 версиями Word.<br /><strong>badik</strong>, а точно не надо закрывать &quot;&lt;body&gt;&quot;? <br />Может стоит немного переработать скрипт до:<br /></p><div class="codebox"><pre><code>@echo off
for %%i in (%*) do call :myDoc %%i
exit /b 0

:myDoc
if exist %1.doc del %1.doc
call :head  &gt; %1.doc
type %1 &gt;&gt;  %1.doc
call :foot  &gt;&gt; %1.doc
exit /b 0

:head
echo ^&lt;html^&gt;
echo ^&lt;head^&gt;
echo ^&lt;META http-equiv=Content-Type content=&quot;text/html; charset=windows-1251&quot;^&gt;
echo ^&lt;meta HTTP-EQUIV=&quot;PRAGMA&quot; content =&quot;no-cache&quot;^&gt;
echo ^&lt;style^&gt;
echo @page WordSection1
echo 	{size:841.9pt 595.3pt;
echo 	mso-page-orientation:landscape;
echo 	margin:1.0cm 1.0cm 1.0cm 1.0cm;
echo 	mso-header-margin:35.4pt;
echo 	mso-footer-margin:35.4pt;
echo 	mso-paper-source:0;}
echo div.WordSection1
echo {page:WordSection1;
echo }
echo ^&lt;/style^&gt;
echo ^&lt;/head^&gt;
echo ^&lt;body ^&gt;
echo ^&lt;div class=WordSection1 ^&gt;
echo ^&lt;pre style=font-size:8.0pt^&gt;
exit /b 0

:foot
echo ^&lt;/div^&gt;
echo ^&lt;/body^&gt;
exit /b 0
</code></pre></div><p>В любом случае, могут быть проблемы с отображением, если кодировка исходного текстового файла отлична от cp1251 (возможно, необходимо &quot;поиграться&quot; с &quot;chcp&quot;), или же, если в текстовике вдруг окажутся теги HTML.</p><p>Превратить такие &quot;суррогаты&quot; в обычные RTF-файлы можно, например, так (простите, но код - PowerShell):<br /></p><div class="codebox"><pre><code>$documents_path = &#039;D:\temp\in&#039;
$out_path =  Get-Item &#039;D:\temp\out&#039;

$word_app = New-Object -ComObject Word.Application

# This filter will find .doc as well as .docx documents
Get-ChildItem -Path $documents_path -Filter *.doc | ForEach-Object {

    $document = $word_app.Documents.Open($_.FullName)

    $rtf_filename = &quot;$(Join-Path $out_path $_.BaseName) + &#039;.rtf&#039;&quot;

    $document.SaveAs([ref] $rtf_filename, [ref] 6)

    $document.Close()
}

$word_app.Quit()
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[UNDYING]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27822</uri>
			</author>
			<updated>2017-02-13T00:36:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=112314#p112314</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD: Просмотр текста с альбомной ориентацией страниц]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=112030#p112030" />
			<content type="html"><![CDATA[<p>С помощью этого кода можно быстро подготовить текстовый файл для просмотра в MS WORD.<br />Ориентация страниц на просмотр и печать будет альбомная.</p><div class="codebox"><pre><code>
@echo off
for %%i in (%*) do call :myDoc %%i

:myDoc
del %1.doc
call :head  &gt; %1.doc
type %1 &gt;&gt;  %1.doc

goto :eof
:head
echo ^&lt;html^&gt;
echo ^&lt;head^&gt;
echo ^&lt;META http-equiv=Content-Type content=&quot;text/html; charset=windows-1251&quot;^&gt;
echo ^&lt;meta HTTP-EQUIV=&quot;PRAGMA&quot; content =&quot;no-cache&quot;^&gt;
echo ^&lt;style^&gt;
echo @page WordSection1
echo 	{size:841.9pt 595.3pt;
echo 	mso-page-orientation:landscape;
echo 	margin:1.0cm 1.0cm 1.0cm 1.0cm;
echo 	mso-header-margin:35.4pt;
echo 	mso-footer-margin:35.4pt;
echo 	mso-paper-source:0;}
echo div.WordSection1
echo {page:WordSection1;
echo }
echo ^&lt;/style^&gt;
echo ^&lt;/head^&gt;
echo ^&lt;body ^&gt;
echo ^&lt;div class=WordSection1 ^&gt;
echo ^&lt;pre style=font-size:8.0pt^&gt;
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[badik]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=21834</uri>
			</author>
			<updated>2017-02-09T08:33:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=112030#p112030</id>
		</entry>
</feed>
