Для русскоязычных пользователей Visio. Начинающих и профессионалов. Где взять, как сделать, что купить и т.д.

Хитрости

Перечень литературы

07.06.2021  Editing a Visio EE master – Part 2  johnvisiomvp.   

13.05.2021  Editing a Visio EE master  johnvisiomvp.   

06.12.2019  Displaying Visio Number Shapes data clearly  David Parker.   

03.09.2019  Методы повышения визуального восприятия структурных схем  Ничков А.В..   

08.08.2019  Multiline text in Visio Shape Data  David Parker.   

10.07.2019  Направляющие линии  Глушаков С.В., Лобяк А.В..   

10.07.2019  Соединительные точки  Глушаков С.В., Лобяк А.В..   

27.02.2019  Visio Топ 10 лучших трюков  Vigil.  Видео 

02.08.2017  Назначить фигуру слою, в соответствии со значением выбранным в ShapeData используя только ShapeShee  Kuzin Alexander.   

03.04.2017  Visio 2016. Дополнительное окно Проводник документа  Alla Vasilieva.  Видео 

12.07.2016  Truly “No-Glue-To” Shapes  Chris Roth.   

20.11.2015  Using multiSelect in Visio  David Parker.  Add-In для прослеживания соединений 

23.05.2012  Способы выделения фигур  Alla Vasilieva.   

14.05.2012  Создание новой схемы из схемы-образца  Alla Vasilieva.   

26.04.2012  Visio Date Format Pictures Affect Data Entry via the Calendar Popup  David Parker.   

23.02.2012  Связывание диапазонов с фигурами  Alla Vasilieva.   

28.01.2010  Applying Selected DataGraphic to the Whole Document  David Parker.   

10.12.2009  Faking 3D in Visio  Chris Roth.   

09.11.2009  Kill the Reviewing Toolbar!  Chris Roth.   

04.11.2009  Why are my Visio files so large?  Visimation.   

02.11.2009  Copying a Visio graphic as a metafile can improve performance  Visimation.   

06.08.2009  Visio 2010 Master Icons Get a Facelift!  Chris Roth.   

25.05.2009  How to Count the Number of Items in a List  Chris Roth.   

04.01.2009  Closing Shape Data Sets window in Visio 2007  David Parker.   

21.10.2008  Title Blocks #1: How to Display Existing Document Information  Chris Roth.   

19.06.2008  Enhancing Visio Data Graphics Text Callouts  David Parker.   

Ответы на вопросы

Отображение данных шейпа в PDF

Существует ли возможность отобразить данные шейпа при конвертировании в PDF? 

Это возможно, если у вас установлен Acrobat Standard. Ниже приведен пример файла Visio с макросом (см. источник). Макрос сохраняет документ в формате PDF в той же папке, затем читает данные шейпов на всех страницах и записывает их в виде комментариев в PDF.
Проверено в Visio 2013 Pro, Acrobat XI Standard, документ Visio в метрической системе.
2. Использование Acrobat - не единственная возможность. Существует множество библиотек, работающих с комментариями. Например, можно воспользоваться open-source PdfSharp.
Преобразование координат должно быть несложным. Внутренние единицы Visio - это дюймы, в PDF - точки, начало координат одинаковое (левый нижний угол). Поэтому формулы Visio_X*72, Visio_Y * 72 должны давать координаты X и Y в PDF.
Пример размещения комментариев есть в http://www.pdfsharp.net/wiki/Annotations-sample.ashx.
Ниже приведен скрипт powershell для добавления аннотаций с использованием рассмотренной выше методики (PdfSharp). 

$visioFileName = $PSScriptRoot + "\demo\PdfNote.vsd"
$pdfFileName = $PSScriptRoot + "\demo\PdfNote.pdf"
Write-Host converting $visioFileName to $pdfFileName
# Load PdfSharp assembly
Add-Type -Path (Get-ChildItem -Filter PdfSharp.dll -Recurse $PSScriptRoot).FullName
# start Visio and open the document
$visio = New-Object -ComObject Visio.Application
$visio.Visible = $true
$visioDoc = $visio.Documents.Open($visioFileName)
# Export PDF, all pages
$visioDoc.ExportAsFixedFormat(1, $pdfFileName, 1, 0)
# Open exported PDF with PdfSharp
$pdfDoc = [PdfSharp.Pdf.IO.PdfReader]::Open($pdfFileName);
for ($i = 0; $i -lt $pdfDoc.PageCount; $i = $i + 1) {
$pdfPage = $pdfDoc.Pages[$i]
$visioPage = $visioDoc.Pages[1 + $i]
foreach ($visioShape in $visioPage.Shapes) {
# if comment exists
$comment = $visioShape.CellsU("Comment").ResultStr(0)
if ($comment) {
# add it as annotation
$x = $visioShape.CellsU("PinX").ResultIU - $visioShape.CellsU("Width").ResultIU / 2
$y = $visioShape.CellsU("PinY").ResultIU + $visioShape.CellsU("Height").ResultIU / 2
$annotation = New-Object PdfSharp.Pdf.Annotations.PdfTextAnnotation
$annotation.Title = $visioShape.Characters.Text
$annotation.Contents = $comment
$annotation.Icon = 6 # "note" icon
# inches to points
$point = New-Object PdfSharp.Drawing.XPoint(($x * 72), ($y * 72))
$size = New-Object PdfSharp.Drawing.XSize(0, 0)
$rect = New-Object PdfSharp.Drawing.XRect($point, $size)
$annotation.Rectangle = New-Object PdfSharp.Pdf.PdfRectangle($rect)
$pdfPage.Annotations.Add($annotation)
}
}

Источник (и подробности) - http://visguy.com/vgforum/index.php?topic=8581