|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
Была задача- сгенерировать Qr-код и сохранить его в виде картинки в Ecxel. C QR-кодом проблемы нет, отрисовывается нормально. Но вот при вставке в Ecxel размеры всегда 29 на 29. Думала что-то при вставке не так. Но при сохранении в bmp такая же история. Я уже пробовала и размеры PaintBox менять, и самой области, где пиксели отрисовываются, и scale... ничего не помогает. Может есть какие-то другие настройки при импорте картинке, а которые я упускаю? Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
//Excel Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 22:07 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
WНаталья Была задача- сгенерировать Qr-код и сохранить его в виде картинки в Ecxel. Вы для каждого элемента QR рисуете 1 пиксел, т.к. размеры кода у Вас 29х29, получается то, что получается. Введите параметр - размер элемента QR ширина*высота, в соотвествии с этим параметром создавайте bitmap (помня про белую окантовку), затем на этом bitmap рисуйте эти элементы/прямоугольники нужно цвета. Другой выриант - использовать StretchDraw, но не рекомендуется ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 23:15 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
WНаталья Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 07:54 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
x1ca4064, не совсем поняла, что размеры кода 29 на 29. StretcDraw - не получится, так как это FMX. обрисовываю через TCanvas.BedinScene и TCanvas.EndScene. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 10:32 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
WНаталья x1ca4064, не совсем поняла, что размеры кода 29 на 29. TDelphiZXingQRCode возвращает размер сгенерированного QR в свойствах Rows и Columns, для тех данных и настроек, которые Вы емы передаете, он возвращает 29*29. Вы создаете битмап этого размера. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 11:38 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
x1ca4064, так, откуда 29 разобралась. Но теперь другой вопрос, как его изменить? QRCode.Rows:= понятное дело не катит. Просмотрела ZXingQRCode - не могу понять, где устаивается размер, Вернее как правильно изменить очевидно, где-то тут Код: pascal 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 13:10 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
WНаталья x1ca4064, так, откуда 29 разобралась. Но теперь другой вопрос, как его изменить? QRCode.Rows:= понятное дело не катит. Просмотрела ZXingQRCode - не могу понять, где устаивается размер, Вернее как правильно изменить очевидно, где-то тут Код: pascal 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 13:16 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
WНаталья x1ca4064, так, откуда 29 разобралась. Но теперь другой вопрос, как его изменить? Не нужно менять - создайте битмап нужного Вам размера (обычно, используют кратные размеру QR: [n*Rows,n*Columns]) и для каждого элемента QR рисуйте квадрат размера n*n. Этакий упрощенный StretchDraw получится. Сейчас сделано для случая n=1. Вынесите все это в отдельную функцию (еще лучше, в отдельный модуль), должно получиться что-то такое: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 20:09 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
У меня так отлично работала печать QR на чеке. Если не ошибаюсь, тут RcCur - текущие координаты, где начинать рисовать, nWindth - длина чека. Через эти параметры масштаб рассчитывается и делается StretchDraw. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 20:34 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
YuRock, спасибо, но к сожалению в FMX нет StretchDraw. разобралась, как сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 22:42 |
|
Размеры картинки при сохранении
|
|||
---|---|---|---|
#18+
x1ca4064, спасибо, сделала почти так. Создаю битмапа нужного размера, очищаю до белого, размер битмапа делю на 29, получаю Scale = размер бирмапа/29, отрисовываю только черные пиксели с поправкой на Scale. В любом случае спасибо =) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2022, 22:48 |
|
|
start [/forum/topic.php?fid=58&msg=40134365&tid=2036640]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 243ms |
total: | 387ms |
0 / 0 |