SASGIS - SAS.Планета
View Issue Details
0003098SAS.Планета[All Projects] Хотелкаpublic03-07-2016 21:3011-08-2016 20:26
vdemidov 
vdemidov 
normalminorN/A
resolvedfixed 
WindowsXPSP3
160606 
181221181221 
0003098: Обновить библиотеку CCR.Exif
Нужно обновить исходники библиотеки CCR.Exif с версии 1.5.2 beta до версии 1.5.3

В принципе ничего сложного, но там поменялось АПИ и требуется вносить синхронные изменения в САС в нескольких строчках. Плюс нужно проверить все ли работает.
No tags attached.
Issue History
03-07-2016 21:30vdemidovNew Issue
03-07-2016 21:32vdemidovNote Added: 0017491
03-07-2016 21:33vdemidovStatusnew => confirmed
08-07-2016 09:56vdemidovTarget Version191221 => 181221
11-08-2016 11:32vdemidovNote Added: 0017619
11-08-2016 11:32vdemidovAssigned To => Garl
11-08-2016 11:32vdemidovStatusconfirmed => assigned
11-08-2016 11:58GarlNote Added: 0017620
11-08-2016 12:37vdemidovNote Added: 0017621
11-08-2016 13:02GarlNote Added: 0017622
11-08-2016 13:16vdemidovNote Added: 0017623
11-08-2016 13:16vdemidovNote Deleted: 0017623
11-08-2016 13:18vdemidovNote Added: 0017624
11-08-2016 18:20vdemidovNote Added: 0017627
11-08-2016 19:25GarlNote Added: 0017628
11-08-2016 19:25GarlNote Edited: 0017628bug_revision_view_page.php?bugnote_id=17628#r7063
11-08-2016 19:36vdemidovNote Added: 0017629
11-08-2016 20:26vdemidovStatusassigned => resolved
11-08-2016 20:26vdemidovFixed in Version => 181221
11-08-2016 20:26vdemidovResolutionopen => fixed
11-08-2016 20:26vdemidovAssigned ToGarl => vdemidov

Notes
(0017491)
vdemidov   
03-07-2016 21:32   
Сами изменения я добавил в репозиторий, но sas.requires не обновлял.

Изменения в САС

diff -r ae9410e4b712 Src/Vector/u_VectorItemTreeImporterJpegWithExif.pas
--- a/Src/Vector/u_VectorItemTreeImporterJpegWithExif.pas Fri Jul 01 18:56:39 2016 +0300
+++ b/Src/Vector/u_VectorItemTreeImporterJpegWithExif.pas Mon Jul 04 00:32:08 2016 +0300
@@ -182,7 +182,7 @@
   VIPTCData: TIPTCData;
   VGPSLatitude: TGPSLatitude;
   VGPSLongitude: TGPSLongitude;
- VGPSAltitude: TExifFraction;
+ VGPSAltitude: TGPSAltitude;
   VItem: IVectorDataItem;
   VList: IVectorItemSubsetBuilder;
   VVectorData: IVectorItemSubset;
@@ -254,7 +254,7 @@
       VAltitude := '';
     end else begin
       VExAltitude := VGPSAltitude.Quotient;
- if VExifData.GPSAltitudeRef = alBelowSeaLevel then begin
+ if VGPSAltitude.Ref = alBelowSeaLevel then begin
         VExAltitude := -VExAltitude;
       end;
       VAltitude := FloatToStrF(VExAltitude, ffFixed, 10, 2);
(0017619)
vdemidov   
11-08-2016 11:32   
Garl, можешь проверить работает оно с новой версией и этими изменениями?
(0017620)
Garl   
11-08-2016 11:58   
не знаю как правильно но вот ещё чего надо в компоненте править чтобы скоимпилилось:

CCR.Exif.pas

@@ -2521,5 +2521,5 @@
 begin
   Result := False;
   for I := 0 to FTagList.Count - 1 do
- if TExifTag(FTagList.List[I]).ID >= ID then
+ if TExifTag(FTagList[I]).ID >= ID then
     begin
@@ -2525,5 +2525,5 @@
     begin
- if TExifTag(FTagList.List[I]).ID = ID then
+ if TExifTag(FTagList[I]).ID = ID then
       begin
         TagIndex := I;
         Result := True;
@@ -2773,7 +2773,7 @@
   try
     for I := FTagList.Count - 1 downto 0 do
     begin
- Tag := TExifTag(FTagList.List[I]);
+ Tag := TExifTag(FTagList[I]);
       for ID in IDs do
         if ID = Tag.ID then
         begin
@@ -2936,7 +2936,7 @@
 begin
   if ChangeType = tcID then
     for I := FTagList.Count - 1 downto 0 do
- if Tag.ID > TExifTag(FTagList.List[I]).ID then
+ if Tag.ID > TExifTag(FTagList[I]).ID then
       begin
         FTagList.Move(FTagList.IndexOf(Tag), I + 1);
         Break;



CCR.Exif.TiffUtils.pas

@@ -1497,7 +1497,7 @@
 begin
   for I := FTagsToWrite.Count - 1 downto 0 do
   begin
- ExistingID := TTagToWrite(FTagsToWrite.List[I]).ID;
+ ExistingID := TTagToWrite(FTagsToWrite[I]).ID;
     if AID > ExistingID then
     begin
       Index := I + 1;

после компилирования логику работы ещё не проверял
дома проверю
(0017621)
vdemidov   
11-08-2016 12:37   
Это ты в какой версии Delphi компилиш? У меня вроде бы таких проблем не было.
(0017622)
Garl   
11-08-2016 13:02   
XE2
(0017624)
vdemidov   
11-08-2016 13:18   
Странно. Я, вероятно, проверял только в 2007, так как думал что с более новой версией проблем не будет.
(0017627)
vdemidov   
11-08-2016 18:20   
Залил эти правки CCR.Exif в репозиторий
(0017628)
Garl   
11-08-2016 19:25   
экспорт\импорт JPEG с EXIF прошёл отлично.
импорт фото с навигатора тоже отлично.

(0017629)
vdemidov   
11-08-2016 19:36   
Ok