2009-12-23 3 views
0

Я хочу, чтобы иметь возможность отправлять изображение с HTML-страницы в XML-файл с помощью C#.включают изображение в файл XML

Изображение должно быть отправлено вместе с текстом, проблема заключается в том, как эффективно сохранить изображение в XML-файле, чтобы его можно было отправить по кабелю и как сохранить позицию изображения в HTML страницы, поэтому его можно восстановить позже в исходном положении?

Я изначально собирался хранить гиперссылку в своем XML-файле на изображение и загружать ее таким образом на HTML-странице с помощью ASP.NET, но я задавался вопросом, есть ли лучшие способы?

EDIT:

Так как я держу координаты изображения на странице по отношению ко всем другим объектам. Какие способы можно сохранить в файле XML и как получить координаты? Использование ASP.NET, HTML и JavaScript?

ответ

4

Вы можете сделать это, но это действительно плохая идея. Если это в контексте ASP.Net, то метод гиперссылок звучит гораздо разумнее.

Однако, если вы настаивают при кодировании изображений в формате XML, а затем посмотреть на base64 encoding или ASCII 85.

+0

Итак, почему это плохая идея для кодирования изображения внутри XML-файла? Каковы преимущества/недостатки? –

+0

Самый большой недостаток - накладные расходы. Вероятно, у вас будет, по крайней мере, 100% накладных расходов. Второй недостаток заключается в том, что вам нужно кодировать и декодировать. Вы не можете просто просмотреть изображение в обычном телезрителе до его декодирования. Клиентский сайт должен знать, что такое кодировка, и быть способным ее расшифровать. – philsquared

+0

Если вы можете гарантировать, что обе стороны могут иметь дело с unicode, без переосмысления на этом пути, вы сможете оптимизировать его дальше. С другой стороны, если вы кодируете в формате ascii, но в конечном итоге переносите, например, ucs-16 или ucs-32 в любом случае, вы можете добавить еще 100-200% накладных расходов! – philsquared

0

Есть спецификации binary xml для отправки таких данных через xml, но они не соответствуют вашей конкретной проблеме «положения изображения».

Я бы просто сохранил URL-адрес изображения и использовал его.

0

Я бы не рекомендовал это делать (лучше добавить ссылку на серверный сервер, который вы можете ссылаться на код < img />, например http://yourhost/someGuid, и оставить сериализацию на веб-сервере и в браузере), но base64 будет простой вариант для вашего использования.

0

Следуйте за KISS principle.

Выполняйте то, что вы изначально собираетесь делать, и сохраните ссылку в файле.

0

Вы можете исправить это изображение как data URI, который в большинстве браузеров seem to support now. Он по-прежнему является базой 64 и менее компактен, чем отдельный двоичный файл, но это стандартный способ создания небольших изображений.

Смежные вопросы