Eurotehnik.ru

Бытовая Техника "Евротехник"
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как сделать лист в клетку в Word

Клетка в Word может иметь разное назначение и внешний вид:

  1. Функциональное назначение.

В этом случае применяется инструмент «Сетка», который служит для выравнивания графических элементов и ориентации их на листе относительно друг друга и координат самого листа.

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

Как лист в клетку в Ворде

Такая клетка не выводится на печать.

  1. Лист в клетку, как визуальный объект.

Применяется, когда надо изобразить лист в клетку в распечатанном виде (аналог тетрадного листа). Например, детям будет проще писать цифры и рисовать фигуры на листе в клетку, чем на обычном альбомном листе.

Тетрадная клетка в Ворде

Лишние абзацы в тексте

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

Ставим курсор в поле Найти, смотрим чуть ниже и кликаем по кнопке Больше, потом по кнопке Специальный и в появившемся списке выбираем строчку Знак абзаца.

Вставить знак абзаца в поле Найти и Заменить на

Вставить знак абзаца в поле Найти и Заменить на

После чего в поле Найти появится вот такая комбинация символов ^p. Одна такая комбинация означает один знак абзаца. Так как и в случае с пробелами ставим два раза, должно получиться вот так ^p^p

А в поле Заменить на Ставим один раз ^p.

Обозначение знака абзаца в окне Найти и заменить

И точно также жмем несколько раз Заменить все.

После этого все повторные нажатия Enter заменятся на один знак абзаца.

В итоге после замены мы убрали лишние пробелы и абзацы в тексте, получив более правильно отформатированный текст.

Текст без лишних пробелов и знаков абзаца

Так выглядит текст без лишних пробелов и знаков абзаца

Экспорт данных из Access в шаблон Excel

В шаблоне Excel уже не нужно создавать поля как в Word, так как здесь мы уже будем ориентироваться по адресам ячеек.

Существует несколько способов, как заполнять Excel шаблон, я опишу два, первый — это тогда, когда Вам просто необходимо проставить несколько полей, т.е. в источнике данных будет всего одна строка с несколькими столбцами. Второй — это когда строк будет уже несколько, причем Вы не знаете, сколько именно (в зависимости от каких то условий). В шаблоне по умолчанию отведено для этого все пару строк, поэтому мы будем нужные нам строки добавлять, для того чтобы наши данные не накладывалась на строки ниже (допустим там примечание, подпись руководителя и т.д.). И совет, я здесь, для примера, использую всего один источник данных, а Вы, если Вам необходимо заполнить шапку, примечание и некое количество строк (т.е. область данных), можете использовать несколько источников (Recordset).

Читайте так же:
Можно ли в кино со своим пивом

Код VBA для выгрузки данных в шаблон Excel

Сначала добавьте кнопку на форму (я ее назвал testexcel) и вставьте следующий код в событие «Нажатие кнопки».

Здесь я также все подробно прокомментировал, но если есть вопросы, то задавайте их в комментариях к данной статье.

Как сделать документы Microsoft Word с PHP

Как я уже говорил в моей предыдущей статье, PHP и WMI — копаясь в Windows с PHP , мы живем в мире, где разработчики PHP время от времени сталкиваются с операционной системой Windows. WMI (интерфейс управления Windows) является одним из таких случаев, а Microsoft Office Interop — другим, еще более важным и более часто используемым.

В этой статье мы увидим простую интеграцию между Word и PHP: для создания документа Microsoft Word на основе входных данных в форме HTML с использованием PHP (и его расширения Interop).

Препараты

Во-первых, убедитесь, что на вашем компьютере для разработки Windows установлена ​​типичная среда WAMP. Поскольку Interop — это просто функция Windows, нам нужно будет разместить Apache и PHP под Windows. В этом случае я использую EasyPHP 14.1 , который довольно прост в установке и настройке.

Далее нам нужно будет установить Microsoft Office. Его версия не так критична. Я использую Office 2013 Pro, но любая версия Office более поздняя, ​​чем 2007, должна работать.

Затем мы должны убедиться, что библиотеки для разработки приложения Interop (называемые PIA, Primary Interop Assemblies) установлены. Чтобы убедиться в этом, мы можем открыть проводник Windows и перейти к: <Windows Directory>assembly и мы увидим несколько установленных PIA:

Мы видим запись Microsoft.Office.Interop.Word (подчеркнута на снимке). Это будет PIA, которую мы используем в этой демонстрации. Пожалуйста, обратите особое внимание на «Имя сборки», «Версия» и «Токен открытого ключа». Они должны быть использованы в наших сценариях PHP очень скоро.

В этом каталоге мы также видим другие PIA (включая все семейство Office), доступные для программирования (не только для PHP, но и для VB.net, C # и т. Д.)

Читайте так же:
Можно ли ездить на машине умершего человека

Если список PIA не включает в себя весь пакет Microsoft.Office.Interop , мы либо переустановим наш Office, но и включим функции PIA; или мы должны вручную загрузить пакет от Microsoft и установить его. Пожалуйста, обратитесь к этой странице MSDN для получения подробных инструкций.

ПРИМЕЧАНИЕ. Для загрузки и установки доступна только распространяемая версия Microsoft Office 2010 PIA. Версия PIA в этом пакете — 14.0.0. Версия 15 поставляется только с установкой Office 2013.

Наконец, мы должны включить расширение PHP php_com_dotnet.dll в файле php.ini и перезапустить сервер.

Теперь мы можем перейти к программированию.

HTML-форма

Поскольку основное внимание в этой демонстрации уделяется серверной обработке, мы создадим простой интерфейс с простой формой HTML, который выглядит как на рисунке ниже:

У нас есть текстовое поле для «Имя», группа переключателей для «Пол», контроль диапазона для «Возраст» и текстовое поле для «Сообщение»; и, наконец, конечно, кнопка «Отправить».

Сохраните этот файл как «index.html» в каталоге в корневом каталоге виртуального хоста, чтобы мы могли получить к нему доступ с помощью URI, например http://test/test/interop .

Задний конец

Внутренний PHP-файл является центром нашего обсуждения. Сначала я перечислю код этого файла, а затем объясню его шаг за шагом.

После настройки переменной $inputs для хранения значений, отправленных из нашей формы, и создания фиктивного значения для printdate — printdate мы обсудим, зачем нам это нужно — мы натолкнулись на эти четыре критические строки:

Манипулирование COM в PHP требует создания экземпляра « класса » внутри « сборки ». В нашем случае мы должны работать с Word. Если мы рассмотрим первый скриншот, который мы показали, мы сможем построить полную подпись Word PIA:

  • «Имя», «Версия», «Токен открытого ключа» — все они взяты из информации, отображаемой при просмотре « c:Windowsassembly ».
  • «Культура» всегда neutrual .

Класс, который мы должны вызвать, — это всегда имя сборки плюс « .ApplicationClass «.

С этими двумя параметрами мы сможем создать экземпляр объекта Word.

Этот объект может оставаться на заднем плане, или мы можем вывести его на передний план, установив для его атрибута visible значение true .

В этом документе для создания контента на основе входных данных из формы HTML у нас есть несколько вариантов.

Самый неблагоприятный способ — это жестко закодировать все содержимое в PHP и затем вывести его в документ Word. Я настоятельно не одобряю это по следующим причинам:

  1. Там не будет гибкости. Любое изменение в выводе потребует модификации скрипта PHP.
  2. Это нарушает разделение между контролем и представлением.
  3. Это значительно увеличит количество строк кода, если мы будем применять стили к содержимому документа (выравнивание, шрифт, стиль и т. Д.). Программно меняющиеся стили слишком громоздки.
Читайте так же:
Метод подбора параметра в excel

Другой способ — выполнить «поиск-замену». PHP имеет сильные встроенные возможности для этого. Мы можем создать документ Word, поместив некоторые специальные разделители вокруг содержимого заполнителя, которые должны быть заменены. Например, мы можем создать документ, содержащий что-то вроде этого:

а в PHP мы можем просто заменить это значением «Name», которое мы получили из отправки формы.

Это просто и позволяет избежать всех недостатков в первом варианте. Нам просто нужно найти правильный разделитель, и в этом случае мы больше похожи на рендеринг шаблона, за исключением того, что используемый шаблон теперь является документом Word.

Третий вариант — моя рекомендация и является продвинутой темой в Word. Мы будем использовать поля для представления заполнителей, а в нашем PHP-коде мы будем напрямую обновлять поля соответствующими значениями формы.

Этот подход является гибким, быстрым и соответствует лучшим практикам Word. Это также позволяет избежать полнотекстового поиска в документах, что способствует повышению производительности. Обратите внимание, что эта опция также имеет свои недостатки.

Word с момента своего появления никогда не поддерживал именованные индексы для полей. Несмотря на то, что мы предоставили имя для полей, которые мы создали в документе Word, мы все равно должны использовать числовые индексы для доступа к каждому полю. Это также объясняет, почему мы должны использовать выделенную функцию ( setupfields ) для ручного отображения между индексом поля и именем поля формы.

Чтобы узнать, как вставить поля в документ Word (нажмите здесь, чтобы получить готовую версию), ознакомьтесь с соответствующими разделами справки Word и руководствами. Для этой демонстрации у нас есть документ с 5 полями MERGEFIELD . Кроме того, мы поместили документ в ту же директорию, что и скрипт PHP, для удобства доступа.

Обратите внимание, что поле printdate не имеет соответствующего поля формы. Вот почему мы добавили фиктивный ключ printdate в массив $inputs . Без этого скрипт все еще может работать, но будет printdate что индекс printdate не представлен в массиве $inputs .

После обновления полей со значениями формы мы распечатаем документ, используя:

Читайте так же:
Можно ли восстановить старую переписку в ватсапе

Метод PrintOut имеет несколько необязательных параметров, и мы используем его простейшую форму. Это напечатает одну копию на принтер по умолчанию, подключенный к нашей машине Windows.

Мы также можем использовать PrintPreview чтобы посмотреть на вывод, прежде чем мы решим напечатать документ. В чисто автоматизированной среде мы, конечно, будем использовать PrintOut .

Нам нужно подождать несколько секунд, прежде чем мы выйдем из приложения Word, потому что задание на печать требует некоторого времени для полной буферизации. Без delay(3) , $w->Quit запускается немедленно, и задание на печать также уничтожается.

Наконец, мы вызываем $w->Quit(false) чтобы закрыть приложение Word, вызываемое нашим PHP-скриптом. Единственный предоставленный параметр — указать, хотим ли мы сохранить изменения перед выходом. Мы внесли изменения в документ, но на самом деле мы не хотим их сохранять, потому что мы хотим сохранить чистый шаблон для ввода других пользователей.

После того как мы завершим код, мы можем загрузить страницу формы, ввести некоторые значения и отправить форму. На рисунках ниже показаны выходные данные сценария PHP, а также обновленный документ Word:


Улучшение скорости кодирования и более глубокое понимание PIA

PHP — это слабо типизированный язык. COM-объект имеет тип Object . Во время нашего PHP-кодирования нет никакого способа получить осмысленное понимание кода объекта, будь то приложение Word, документ или поле. Мы не знаем, какие свойства он имеет или какие методы он поддерживает.

Это значительно замедлит нашу скорость разработки. Чтобы сделать это быстрее, я бы рекомендовал сначала разработать функции на C #, а затем перенести код обратно в PHP. Бесплатная C # IDE, которую я бы порекомендовал, называется «#develop» и может быть загружена здесь . Я предпочитаю этот вариант серии VS, потому что #develop меньше, чище и быстрее.

Миграция кода C # в PHP совсем не страшна. Позвольте мне показать вам несколько строк кода C #:

Мы можем видеть, что код C # практически идентичен коду PHP, который мы показали ранее. C # строго типизирован, поэтому мы видим несколько операторов приведения типов и должны явно дать нашим переменным тип.

С заданным типом переменной, мы можем наслаждаться пониманием кода и дополнением кода, так что скорость разработки намного быстрее.

Еще один способ ускорить нашу разработку на PHP — использовать макросы Word. Мы выполняем те же действия, что и нам, и записываем их с помощью макроса. Макрос в Visual Basic, который также может быть легко преобразован в PHP.

Читайте так же:
Мил ру личный кабинет военнослужащего вход

Самое главное, что официальная документация Microsoft по Office PIA , особенно документация по пространству имен для каждого приложения Office, всегда является наиболее подробным справочным материалом. Чаще всего используются три приложения:

  • Excel 2013: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel(v=office.15).aspx
  • Word 2013: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word(v=office.15).aspx
  • PowerPoint 2013: http://msdn.microsoft.com/en-us/library/microsoft.office.interop.powerpoint(v=office.15).aspx

Вывод

В этой статье мы продемонстрировали, как заполнять документ Word, используя библиотеки PHP COM и возможности взаимодействия с Microsoft Office.

Windows и Office широко используются в повседневной жизни. Знание возможностей Office / Windows и PHP будет важно для любого программиста на PHP + Windows.

С расширением COM в PHP открывается возможность освоить эту комбинацию.

Если вы заинтересованы в этой области программирования, пожалуйста, оставьте свои комментарии, и мы рассмотрим больше статей на эту тему. Я с нетерпением жду возможности увидеть больше реальных приложений, разработанных с использованием этого подхода.

В некоторых случаях нам нужно разделить страницу на четыре части, чтобы разместить текст в документе, как показано на скриншоте ниже. Однако нет встроенной функции, которая могла бы помочь вам напрямую справиться с этой задачей. В этой статье я расскажу, как завершить эту работу в Word.
документ разделен на 4 1

Разделить страницу на 4 части с помощью таблицы

Чтобы разделить страницу на 4 части, вы можете вставить таблицу для выполнения задания.

1. Поместите курсор в левый верхний угол страницы, затем щелкните Вставить > Настольные, наведите на Стол 2×2.
документ разделен на 4 2

2. Таблица была вставлена, затем перетащите правый угол таблицы, чтобы изменить ее размер по своему усмотрению.
документ разделен на 4 3

3. Вставьте тексты в столбцы и строки отдельно.
документ разделен на 4 4

4. Выделите всю таблицу, в разделе «Работа с таблицами» щелкните Дизайн > Граница > Без границ.
документ разделен на 4 5

Теперь страница выглядит как разделенная на 4 части.
документ разделен на 4 1

Просмотр и редактирование нескольких документов Word / книг Excel с вкладками в Firefox, Chrome, Internet Explore 10!

Возможно, вы знакомы с просмотром нескольких веб-страниц в Firefox / Chrome / IE и возможностью переключения между ними, легко щелкая соответствующие вкладки. Здесь вкладка Office поддерживает аналогичную обработку, которая позволяет вам просматривать несколько документов Word или книг Excel в одном окне Word или Excel и легко переключаться между ними, щелкая их вкладки.
Нажмите, чтобы получить бесплатную пробную версию вкладки Office!

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector