Check whether external referenced images exist and replace references
Contents
[
Hide
]How to edit of hyperlinks on objects
Issue: How to check whether external referenced images exist and replace references (CADNET-8088).
Tips: To do this, get an entity of type CadObjectTypeName.IMAGEDEF from the drawing entities and use CadRasterImageDef to check.
Example:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
foreach (CadBaseObject baseObject in cadImage.Objects) | |
{ | |
if (baseObject.TypeName == CadObjectTypeName.IMAGEDEF) | |
{ | |
// the relation between CadRasterImageDef (in cadImage.Objects) and CadRasterImage (in cadImage.Entities) is by | |
// cadRasterImageDef.ObjectHandle == cadRasterImage.ImageDefReference | |
CadRasterImageDef rasterImageDef = (CadRasterImageDef)baseObject; | |
// path may be relative or absolute | |
if (!File.Exists(rasterImageDef.FileName)) | |
{ | |
// rasterImageDef.FileName = @"D:\Users\Oleksii\Desktop\c2.jpg"; | |
rasterImageDef.FileName = "13521951017666.jpg"; | |
cadImage.UpdateSize(); | |
} | |
} | |
} |