giveaway
Пользователи-
Постов
69 -
Зарегистрирован
-
Посещение
-
Победитель дней
1
Весь контент giveaway
-
Сам браузер работает нормально, скрин с него не снимается только... Какой выход? Пробовать Chromium?
-
Неожиданно выяснилось, что все работает на Mac Sierra при постройке и в Билдере 10.1 и 10.3, а вот все версии Mac OS X выше - выдают пустой скриншот. Может быть это что-то подскажет?
-
С нижеследующим кодом под Windows все работает нормально (при печати добавляю на канву принтера номер страницы) А вот в Маке вместо номера, получаю залитый черным прямоугольник. В чем ошибка? TRectF pgRect; String numPagebuf; int x1, y1, x2, y2; x1 = 60; y1 = Printer->PageHeight - 220; x2 = Printer->PageWidth - 60; y2 = Printer->PageHeight - 170; pgRect.init(x1, y1, x2, y2); numPagebuf = IntToStr(numPage); TCanvas * canvas = Printer->Canvas; canvas->BeginScene(); canvas->Font->Size = 90; canvas->Fill->Kind = TBrushKind::Solid; canvas->Stroke->Thickness = 1; canvas->FillText(pgRect, numPagebuf, false, 0, TFillTextFlags(), TTextAlign::Center, TTextAlign::Center); canvas->EndScene();
-
Дальнейшие эксперименты показали, следующее... У меня есть форма и внутри нее канва браузера. Я стал снимать скриншот не только с канвы, а со всей формы. Так вот - в данном случае скриншот не весь пустой, - на него попадают элементы управления формы (кнопки и пр.), но находящая внутри скриншота канва браузера пуста. Ощущение что отображаемые браузером html фалы не относятся к графике и не захватываются. Напоминанием попытку снять скриншот кино в видеоплеер с помощью клавиши printscreen, там тоже окно видеоплеера будет присутствовать, но его содержимое - нет. Напомню, что такая бага присутствует только в Маке, - в Винде скриншоты захватываются нормально.
-
Привожу кусок кода, в котором я захватываю в скриншот то, что отображает бразуер. Под Виндой все прекрасно работает, а вот в Маке скриншоты создаются пустыми. Что может быть не правильно? TBitmap* TForm1::getScreenshotWebBrowser() { TBitmap *BitmapBuffer; TBitmap *bmp_Scrhot = new TBitmap; // Фиксируем размер снимаемой области TRectF SourceRect(0, 0, WebBrowser1->Width, WebBrowser1->Height); TRect Rect_bmp(0, 0, WebBrowser1->Width, WebBrowser1->Height); // Создаем временный буфер для получения скриншота BitmapBuffer = new TBitmap(SourceRect.Width(), SourceRect.Height()); try { // Переводим канву в режим отрисовки - начинаем процесс отрисовки сцены if (BitmapBuffer->Canvas->BeginScene()) try { // Говорим контролу отрисовать себя в канве нашего буфера в указанной области WebBrowser1->PaintTo(BitmapBuffer->Canvas, SourceRect); } __finally { // Завершаем процесс отрисовки, заканчивая формируемую сцену BitmapBuffer->Canvas->EndScene(); } BitmapBuffer->SaveToFile(GetHomePath() +"/screenshot1.png"); bmp_Scrhot->Width = Rect_bmp.Width(); bmp_Scrhot->Height = Rect_bmp.Height(); bmp_Scrhot->CopyFromBitmap(BitmapBuffer, Rect_bmp, 0, 0); bmp_Scrhot->SaveToFile(GetHomePath() +"/screenshot2.png"); } __finally { delete BitmapBuffer; } return bmp_Scrhot;
-
Строю приложение под Win и Mac OS X с использованием TWebBrowser. В Винде оно нормально открывает файлы html, в Маке же браузер не работает, - просто пустое окно даже для примитивных html файлов. Читаю в сети отзывы, и что-то не понятно по кроссплатформенности компонента. Для Мака она есть? Или надо пользоваться альтернативой?
-
Формирую документ для печати и хочу в него добавить программно некий текст, фигуры и изображение. Вот кусок кода: TRectF RectF(10, 10, 30, 30); BitmapTmp->Canvas->DrawRect(RectF, 0, 0, AllCorners, 100); BitmapTmp->Canvas->FillText(RectF, ImageSel->Name, false, 1, TFillTextFlags() << TFillTextFlag::RightToLeft, // TFillTextFlags(), TTextAlign::Center, TTextAlign::Center); Прямоугольник отрисовывается нормально, а текст не отображается. Что я делаю не так?
-
Никто не поделиться? Можно в личку. Нашел в свободном доступе только для Delphi и VCL
-
Мне в пдфку чисто картинки надо скидывать, но с определенной версткой (две на одну страницу). Это возможно сделать без сторонних средств?
-
Коллеги, подскажите по данной задаче что есть нового? Мне нужно создание pdf файла под Win и Mac для С++, а HTML Report Library и FastReport FMX, как я понимаю, все для Delphi?
-
Почему-то при первом запуске (нажатии кнопки Печать) строка if(!Printer) return; возвращает null. Хотя принтеры на компьютере есть. При втором нажатии код уже вдруг переходит к условию if(Printer->ActivePrinter->SelectDPI(1200, 1200)==false) return; И происходит вот такоей вылет: Сама функция вот такая, если что:
-
Создаю код для вывода на печать картинки из файла. Взял за основу рабочий пример. Вот мой, немного переделанный, код void __fastcall TForm1::PrintImageh(TImage *ImageTmp) { TRectF SrcRect, DestRect; TPrinter *Printer = Printer; if(!Printer) return; /* Set the default DPI for the printer. The SelectDPI routine defaults to the closest available resolution as reported by the driver. */ if(Printer->ActivePrinter->SelectDPI(1200, 1200)==false) return; /* Set canvas filling style. */ Printer->Canvas->Fill->Color = claBlack; Printer->Canvas->Fill->Kind = TBrushKind(1); /* Start printing. */ Printer->BeginDoc(); /* Set the Source and Destination TRects. */ SrcRect = ImageTmp->LocalRect; DestRect = TRectF(0, 0, Printer->PageWidth, Printer->PageHeight); /* Print the picture on all the surface of the page and all opaque. */ Printer->Canvas->DrawBitmap(ImageTmp->Bitmap, SrcRect, DestRect, 1); /* Finish the printing job. */ Printer->EndDoc(); } Происходит вылет на строке if(Printer->ActivePrinter->SelectDPI(1200, 1200)==false) return; Что может быть не так?
-
Год назад прекрасно копилил проект под Мак в такой связке (специально сохранил): RADStudio-Berlin-10.1.2 Xcode 7.3.1 с SDK 10.11.4 Mac OS X 10.12.6 Sierra VMware Workstation Pro 12.5.8 Сейчас попробовал сделать то же самое. Компилятор ошибок не выдает, но при развертывании app в самом Маке Терминал пишет: >dyld: Library not loaded: @rpath/bplrtl240.dylib Referenced from: /Users/admin/PAServer/scratch-dir/Admin-Sierra/MyApp.app/Contents/MacOS/MyApp Reason: image not found Хотя файл существует по пути Embarcadero\Studio\18.0\binosx32\bplrtl240.dylib и Embarcadero\Studio\18.0\Redist\osx32\bplrtl240.dylib Что пошло не так? Еще создал другой новый проект. Он даже построение не проходит. Вылетает куча ошибок типа E2268 Call to undefined function и E2451 Undefined symbol Под Винду оба проекта строятся и запускаются прекрасно. P.S. Я правильно понимаю что SDK при нажатии Update Local File Cache вытаскивается из подключенного Мака, из того Xcode, который там установлен?
-
Ищу компонент-контейнер для отображения миниатюр картинок
giveaway опубликовал вопрос в Поиск компонентов
Задача такая. Использую TWebBrowser для отображения сайта на десктопе. По кнопке делаю скриншот желаемой веб-страницы. Нужно что бы снимаемые таким образом скриншоты отображались в виде миниатюр в колонке сбоку. Попадали туда один за другим. Желательно с ними там проводить некоторые операции – 1) менять порядок 2) удалять Какой компонент(ы) взять для такой «колонки» в качестве контейнера? Требуется кроссплатформенность Винда/Мак. Буду признателен за идеи. -
Написал приложение. Все прекрасно работало, пока реальные пользователи Мак не стали жаловаться на такую ошибку. Приложение скачивается ими с моего сайта (не Apple Store), и если его тут же запускать из папки Downloads, то выскакивает такое окно с алертом “The specified file was not found”. Однако стоит просто перенести приложение, или на рабочий стол, или в любую другую папку, включая системные по типу Applications и т.д., то все работает замечательно. Что за ерундень в этом Маке?)) Куда копать? P.s. Контейнер апп содержит внутри бинарник unrar, который я использую для распаковки .rar файлов (так нужно по задумке). Может отсюда ноги растут?
-
Решения данной проблемы так и нет? Так чтобы половина кода не переделывать? Аппликуха нормально работала на всех Маках пока не вышла High Sierra Я даже готов отказаться от https, в случае если юзер будет запускать мое приложение на High Sierra. Как внутри отловить условие ненайденной SSL библиотеки и отказаться от ее использования в данном случае?
-
Напишу сюда же, дабы не создавать новую тему. Есть вопрос - как Mac обозначает диски? В своем приложении проверку свободного места на диске я реализовал через посыл определенной команды в терминал. Его ответ я использую для подсчета места. Но если в Windows диски обозначатся буквами, и отталкиваясь от этого я выполняю нужные калькуляции. У Мака ничего такого нет, и в итоге у меня определяется место только на том диске, с которого запущено мое приложение. А если есть другие внутренние или внешний диски – то калькуляция свободного места на них не получается… Есть идеи как это решить?
-
Разобрался. Почему-то мало где описан процесс создания иконок. Их надо создавать по-разному под Винду и Мак. 1) Для Windows нужно создать квадратные картинки png с разрешениями: 16, 24, 32, 48, 256. Потом в спец.редакторе собрать их в один файл .ico Я пользовался IcoFX. И уже данный "многослойный" файл .ico загружается в билдере (Project->Options->Application) и подхватывается при компиляции. 2) Для Мака также создаются png картинки, но кроме расширения нужно задать им и спец.имя: icon_16x16.png icon_16x16@2x.png icon_32x32.png icon_32x32@2x.png icon_128x128.png icon_128x128@2x.png icon_256x256.png icon_256x256@2x.png icon_512x512.png icon_512x512@2x.png Все эти картинки помещаются в папку <название>.iconset, которая заидывается на реальный Мак или его виртуальную инкарнацию. Там в Терминале вводим команду iconutil -c icns <название>.iconset Терминал создаст "многослойный" иконочный файл для Мака с расширением .icns Его тоже загружаем в билдере через Project->Options->Application. Если это не сработает, и после компиляции под Мак подцепится опять какая-то левая иконка, можно заменить этот файл .icns внутри конейнера .app Он там лежит в явном виде в папке Resources
-
Создал, как полагается, иконку в формате .icns, сделал Load в Project->Options->Application, причем и для All Configurations, и для Debug, и для Release. После компиляции маленькая иконка оказывается стандартной, которую сам биледр подставляет со значком С++, а большой ярлык вообще почти пустой (Мак свой какой-то подсовывает). Скрин прилагаю. Что делаю не так? Версия под Винду иконки подхватывает норм, а Мак вот артачиться.
-
Вопрос остался. Решил попробовать кинуть dll в Temp, но экзешник ищет их рядом с собой и конечно не находит. Можно ли обращаться к dll, лежащим в другом месте?
-
Не факт) На комп №1 поставил такую же связку как и на №2, а именно VMWare Workstation 10.0.7 и OS X Maverick 10.9 DP1 (без Xcode) и приложение стало работать без ошибок. Более того теперь на других Mac OS (Maverick 10.9.5 и Mountain Lion 10.8.3) первая точка проходится без сбоев, а вот вторая осталась.
-
Приложение работает не на всех связках Workstation + OS X
giveaway опубликовал вопрос в Развертывание приложений
На компьютере №1 установлены: VMWare Workstation 10.0.7 OS X Maverick 10.9 DP1 Xcode 5.1.1 На нем скомпилированное приложение .app выполняет все свои функции. На компьютере №2 установлены: VMWare Workstation 12.5.5 OS X El Capitan 10.11.6 OS X Maverick 10.9.5 OS X Mountain Lion 10.8.3 Xcode отсутствует во всех OS X На нем в любой из систем приложение виснет в двух одних и тех же точках. В чем засада? В Workstation? Как я понимаю, отсутствие Xcode не должно влиять на работу уже скомпилированного .app