Hi,
I am using CADImage.dll for converting cad files to svg
I observed that the viewbox created by svg file is static that is 0 0 65555 65555
but that file has points beyond the viewbox ie. 475614 like something.
so I cant view that file into browser
my browser shows me blank.
When I change the viewbox size manually as more than the points used in file, then it is visible.
So I want this viewbox size should be dynamic instead static.
let me know if I need to change the code any where,
here is my code:
public string CADToSVG(string filePath)
{
CADImageDLLImporter.CADFile = CADImageDLLImporter.CreateCAD(IntPtr.Zero, filePath);
if (CADImageDLLImporter.CADFile != IntPtr.Zero)
{
var tempFilesDirectory = ConfigurationManager.AppSettings["TempFilesDirectory"]; //Where all the temp files are
var FileName = Server.MapPath(String.Format(@"~\{0}\tmp.svg", tempFilesDirectory)); //The temp PDF path
#if SERIALIZED_XML_PARAMS
ExportParams exportParams = new ExportParams();
exportParams.Version = "1.0";
exportParams.FileName = FileName;
exportParams.Ext = System.IO.Path.GetExtension(exportParams.FileName);
exportParams.CADParametrs.XScale = 10;
exportParams.CADParametrs.ColorBackground = Color.White;
exportParams.CADParametrs.ColorDefault = Color.Black;
//enum PixelFormat {pfDevice, pf1bit, pf4bit, pf8bit, pf15bit, pf16bit, pf24bit, pf32bit, pfCustom};
exportParams.GraphicParametrs.PixelFormat = 6; //pf24bit
exportParams.GraphicParametrs.DrawMode = (int)drawMode.dmNormal;
exportParams.GraphicParametrs.Width = CADImageDLLImporter.fAbsWidth;
exportParams.GraphicParametrs.Height = CADImageDLLImporter.fAbsHeight;
exportParams.GraphicParametrs.DrawRect = new Rect(Rectangle.Round(DrawRect));
string xmlExportParamsString = exportParams.ToString();
#else
string graphicParams = String.Format("<GraphicParametrs><PixelFormat>1</PixelFormat><Width>{0}</Width><Height>{1}</Height><DrawMode>0</DrawMode><DrawRect Left=\"0\" Top=\"0\" Right=\"{2}\" Bottom=\"{3}\"/></GraphicParametrs>", (int)CADImageDLLImporter.fAbsWidth, (int)CADImageDLLImporter.fAbsHeight, (int)CADImageDLLImporter.fAbsWidth, (int)CADImageDLLImporter.fAbsHeight);
string cadParams = String.Format("<CADParametrs><BackgroundColor>{0}</BackgroundColor><DefaultColor>{1}</DefaultColor><XScale>1</XScale></CADParametrs>", ColorTranslator.ToWin32(Color.White), ColorTranslator.ToWin32(Color.Black));
string xmlExportParamsString = String.Format("<?xml version=\"1.0\" encoding=\"utf-16\" ?><ExportParams><Filename>{0}</Filename><Ext>{1}</Ext>" + cadParams + graphicParams + "</ExportParams>", FileName, System.IO.Path.GetExtension(FileName));
#endif
try
{
if (CADImageDLLImporter.SaveCADtoFileWithXMLParams(CADImageDLLImporter.CADFile, xmlExportParamsString, null/*OnCADProgress*/) == 0)
{
string ErrMsg = new string(new char[256]);
CADImageDLLImporter.GetLastErrorCAD(ErrMsg);
}
else
{
return System.IO.File.ReadAllText(FileName);
}
}
catch (Exception e)
{
return null;
}
}
else {
string ErrMsg = new string(new char[256]);
CADImageDLLImporter.GetLastErrorCAD(ErrMsg);
return null;
}
return null;
}
CAD to SVG converter Viewbox issue
Moderators: SDS, support, admin
Re: CAD to SVG converter Viewbox issue
Hello,
Currently it is not possible to alter the viewBox value for the output SVG file. We are aware of this issue.
Mikhail
Currently it is not possible to alter the viewBox value for the output SVG file. We are aware of this issue.
Mikhail
Technical Support E-mail: support@cadsofttools.com
Chat support on Skype: cadsofttools.support
Chat support on Skype: cadsofttools.support