-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No label returned #19
Comments
Hi, have you resolved this? I'm not an expert with this plugin, but I do support the Brother SDK (primarily the iOS version). However, I'm not an expert with QL-series models either (different division of Brother). But, I'll try to assist you if you still need it. The various FindXXXPrinters methods in this plugin will NOT include the "currently loaded" label type in the Printer object returned, from what I can tell from a brief look at the plugin code. So, it seems you are required to set the 'paperLabelName' field in Printer object yourself to the type of label being used, before you call "SetPrinter". So, this is not automatic. NOTE: QL model printers know what type of label is inserted and the paper string passed into the SDK MUST match it. (This is NOT true with all models the SDK supports). However, I do NOT believe the SDK provides an API that allows you to "ask" the printer what type of label is currently loaded, for printer models that might support this feature. If this is what you need, I can check this with the SDK developers to see if such a method exists. But, even IF the method exists, in both Android and iOS SDKs, it seems that you (or someone) would have to modify the plugin to use it. And, this would not work on all models, as I've stated. Most likely, you will have to specify the 'paperLabelName' yourself, or allow user to choose it from a list that you provide, before you call SetPrinter. Hope this helps. -Rob |
Since writing my reply here a few years ago, I have learned something about printing to QL printers. And, my previous response was incorrect (as concerns the SDK, not the plugin). If anyone wants to explore this in the future, the iOS SDK does in fact provide an API that allows retrieving the currently installed QL or PT printer label. It's the v3 "getLabelInfoStatus()" method. And, the labelID field in the resulting class object contains the ID that should match the "enum" values provided in the v3 SDK APIs. NOTE: I believe the Android SDK has a similar capability. WARNING: If you ever convert the plugin to use the v4 APIs for printing, the v3 enum MUST be converted to the v4 enum, because the enum values have changed between v3 and v4. The v4 SDK does not currently have a similar method available. But, a new method to do this will likely be added in a future v4 SDK update. Anyway, there is nothing wrong with forcing user to choose a specific label from a list of options (and specify that to this plugin in the way it currently requires). But, if you must have the convenience of auto-detecting the currently installed label, it can be done. -Rob |
So, what does this mean? Does this plugin support this? |
You are right @cpgb85 , this plugin and the Brother SDK do not detect the installed label. |
@cpgb85 As arcadius mentioned, the plugin currently does not support the capability to detect the label. On iOS, use the getLabelInfoStatus() function. Android SDK may be same or similar API. Otherwise, a common way to support this in an App is to provide a GUI which shows a list of labels that you wish to support. From this user selection, you can then use the currently available capability in the plugin to specify the label size. @arcadius It may be nice some day to implement the SDK getLabelInfoStatus() function at print-time inside the plugin, and then it would not be necessary for the app to specify the label or provide a GUI. This is only a suggestion. I do not mean to add anything to your plate ;-) Cheers, |
I love the plugin. it actually returns printers for me, but it won't return the label being used. am i missing something?
The text was updated successfully, but these errors were encountered: