# include“l_bitmap.h”
L_LTSVG_APIL_INTL_SvgLoadDocumentMemory(buffer, bufferSize, docHandle, options)
从内存中的SVG文件加载SVG文档。
指向内存中要加载的文件的指针。
文件在内存中的大小(以字节为单位)。
指向引用目标SVG文档的L_SvgNodeHandle的指针。
指向包含SVG加载选项的结构的可选指针。传递NULL以使用默认选项。
价值 | 意义 |
---|---|
成功 | 函数成功。 |
< 1 | 发生错误。指返回代码. |
中提供对SVG的支持文件和医疗成像工具包。
获取和设置有关文档边界和解析参考的信息SVG大小,边界和平坦.
当不再需要SVG文档数据时,必须调用L_SvgFreeNode释放为SVG文档分配的存储空间。
所需的dll和库
Win32, x64, Linux。
这个示例将把一个SVG文档保存到内存缓冲区并重新加载它。
L_INT SvgLoadDocumentMemoryExample (L_VOID)
{
L_INT nRet = SUCCESS;
L_TCHAR srcFileName[L_MAXPATH] = MAKE_IMAGE_PATH(TEXT(“Leadtools.doc”));
L_TCHAR dstFileName[L_MAXPATH] = MAKE_IMAGE_PATH(TEXT(“Output.svg”));
L_TCHAR msg[1024] = {0};
//从源文档加载SVG
wsprintf(味精、L_TEXT (“加载:% s \ n”), srcFileName);
wprintf(味精);
LOADSVGOPTIONS = {0};
svgOptions。uStructSize =运算符(LOADSVGOPTIONS);
nRet = L_LoadSvg(srcFileName, &svgOptions, NULL);
如果(nRet != SUCCESS)
返回nRet;
//将其作为SVG保存到内存中
wsprintf(味精、L_TEXT (“保存到内存\n”));
wprintf(味精);
L_UCHAR* buffer = NULL;
L_UINT bufferSize = 0;
nRet = L_SvgSaveDocumentMemory(svgOptions. nRet = L_SvgSaveDocumentMemory。SvgHandle, &buffer, &buffer size, NULL);
//释放源SVG文档
L_SvgFreeNode (svgOptions.SvgHandle);
svgOptions。SvgHandle = NULL;
如果(nRet == SUCCESS)
{
//从内存加载
wsprintf(味精、L_TEXT (“从内存加载\n”));
wprintf(味精);
L_SvgNodeHandle docHandle = NULL;
nRet = L_SvgLoadDocumentMemory(buffer, bufferSize, &docHandle, NULL);
//释放L_SvgSaveDocumentMemory分配的内存
L_SvgFreeMemory(缓冲);
如果(nRet == SUCCESS)
{
//将其保存到磁盘上的文件为SVG
wsprintf(味精、L_TEXT (“储蓄:% s \ n”), dstFileName);
wprintf(味精);
nRet = L_SvgSaveDocument(dstFileName, docHandle, NULL);
}
//释放SVG文档
L_SvgFreeNode (docHandle);
}
返回nRet;
}