compare .fig files, or folders containing .fig files

compareFigFiles compares GUI (*.FIG) files, reporting differences in components/properties
599 Downloads
Updated 3 Aug 2017

View License

Syntax:
compareFigFiles(folderName1, folderName2)
compareFigFiles(folderName, figFilename)
compareFigFiles(figFilename, folderName)
[diffStruct,data1,data2] = compareFigFiles(figFilename1, figFilename2)

Description:
compareFigFiles compares *.fig files, reporting internal components and properties that are different between corresponding fig files.

Inputs can be either a figure filename or folder name. When a folder name is specified, then all the corresponding fig file(s) in that folder will be compared to the other folder/file. Note: when one of the inputs is a folder, then only files that have the same name will be compared.

compareFigFiles(folderOrFilename) compares the specified input to the current folder (pwd).

[diffStruct,data1,data2] = compareFigFiles(file1,file2) returns a Matlab struct containing the non-matching components/properties. Each of the struct fields corresponds to a specific figure handle and property name, and contains a cell array of 2 values, for each of the compared files. data1 and data2 contain the raw data used for the comparison - a Matlab struct with fields corresponding to each of the components/properties defined in the fig file (see attached screenshot).
Examples:
compareFigFiles('C:\Yair',pwd); % compares corresponding fig files in 2 folders
compareFigFiles('C:\Yair'); % (same as above)

compareFigFiles('myApp', 'hisApp'); % compare 2 FIG files
compareFigFiles('myApp.fig','hisApp.fig'); % (same as above)

compareFigFiles('C:\Yair\myApp'); % compare C:\Yair\myApp.fig to (pwd)\myApp.fig
compareFigFiles('C:\Yair\myApp',pwd); % (same as above)
compareFigFiles(pwd,'C:\Yair\myApp'); % (same as above)

Technical Description:
http://undocumentedmatlab.com/blog/fig-files-format/

Bugs and suggestions:
Please send to Yair Altman (altmany at gmail dot com)

Cite As

Yair Altman (2024). compare .fig files, or folders containing .fig files (https://www.mathworks.com/matlabcentral/fileexchange/42466-compare-fig-files-or-folders-containing-fig-files), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Printing and Saving in Help Center and MATLAB Answers
Acknowledgements

Inspired by: ObjDiff - Generic object comparator

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

Fixed certain edge-cases; added support for savefig(...,'compact') mode

1.0.0.0