Конвейер контента плохо справляется с вашей ситуацией. Он не поддерживает импорт одного файла и создание нескольких выходных данных (в вашем случае PDF-файл с текстурой для каждой страницы). (ссылка)
Вдобавок, я полагаю, вы захотите использовать сторонний внешний инструмент командной строки для преобразования ваших PDF-страниц в текстуры (я думаю, ImageMagick, вероятно, хорошее место для начала). Следующий подход также избавит вас от хлопот по интеграции в конвейер контента.
Итак, вот что я бы сделал: во-первых, запустите инструмент преобразования PDF-файлов до построения конвейера контента. Простое (но медленное) место - это событие перед сборкой вашего информационного проекта. Я предлагаю конвертировать PDF в несколько файлов PNG.
А затем используйте подстановочный знак, чтобы включить все эти PNG-файлы в ваш контент-проект. Вот вопрос, который объясняет это.
Когда вы загружаете текстуры, просто используйте что-то вроде Directory.EnumerateFiles
, чтобы найти имена результирующих файлов XNB в соответствующем пути содержимого.
(Если вы хотите добавить перетаскивание в Visual Studio, вы можете возиться с MSBuild, чтобы удалить элементы PDF и заменить их элементами PNG с подстановочными знаками или чем-то еще. Это также имеет то преимущество, что позволяет вам только перестраивайте свои PNG при изменении PDF, делая вашу сборку намного быстрее. Я оставлю это как упражнение.)
Конечно, если вы просто создаете несколько фиксированных PDF-файлов - просто конвертируйте их в изображения прямо с помощью своего инструмента и добавьте их в свой контент-проект.
person
Andrew Russell
schedule
03.11.2010